Return-Path: <john.harrison-request@uk.ac.cam.cl>
Received: from ted.cs.uidaho.edu by swan.cl.cam.ac.uk with SMTP (PP-6.0) 
          id <25287-0@swan.cl.cam.ac.uk>; Fri, 24 Apr 1992 10:29:21 +0100
Received: by ted.cs.uidaho.edu (16.6/1.34) id AA07147;
          Fri, 24 Apr 92 02:04:23 -0700
Sender: info-hol-request@edu.uidaho.cs.ted
Errors-To: info-hol-request@edu.uidaho.cs.ted
Received: from sun3.nsfnet-relay.ac.uk by ted.cs.uidaho.edu (16.6/1.34) 
          id AA07139; Fri, 24 Apr 92 02:02:47 -0700
Via: sun3.nsfnet-relay.ac.uk; Fri, 24 Apr 1992 09:59:16 +0100
Received: from godel.dcs.ed.ac.uk by dcs.ed.ac.uk id aa25213;
          24 Apr 92 10:02 BST
To: info-hol@edu.uidaho.cs.ted
Subject: Commercial SML
Date: Fri, 24 Apr 92 10:02:15 +0100
From: mikef@uk.ac.ed.dcs
Message-Id: <9204241002.aa25213@dcs.ed.ac.uk>

- ------- Forwarded Message

> Is there a commercial SML/NJ compiler?  Such a compiler would
> presumably be more secure than a freely-available public compiler for
> those willing to pay for security.

That depends on what you mean by "a commercial SML/NJ compiler".

SML/NJ is an implementation of Standard ML; there are several
commercial implementations of Standard ML available.

The commercial implementations of Standard ML all conform to the
publisheded ML Standard - "The Definition of Standard ML" (Milner,
Tofte and Harper; MIT Press 1990).

SML/NJ also conforms to the ML Standard, apart from a few annoying
differences, such as the syntax of imperative type variables.

The ML Standard doesn't legislate what library support an
implementation should provide but all implementations that I
know of support the Edinburgh Library. If you have used SML/NJ
specific features, then these are unlikely to be portable.

The remainder of this message is a flyer for Poly/ML which is
AHL's commercial implementation of Standard ML.

Simon Finn (Abstract Hardware Ltd)

- - ---------------------------------------------------------------------------

Product Announcement - Poly/ML for X
====================================

Abstract Hardware Limited is pleased to announce the launch of
`Poly/ML for X', a new version of Poly/ML which provides support for
the X Window System. `Poly/ML for X' brings all the advantages of
Standard ML to the world of graphics programming.

What is Poly/ML?
================

Poly/ML is a mature, industrial strength, commercially-supported
implementation of the Standard ML programming language, including the
modules system, with some extensions. The extensions include a make
system and support for persistent objects. Poly/ML has been engineered
to run well on machines with only a moderate amount of real memory but
can also take full advantage of any memory that is present.  Poly/ML is
currently available on Sun-3 and SPARC workstations.

Poly/ML is a mature system; it has evolved over a period of more than
five years. The compiler and run-time system are both reliable products
that have passed the test of time; Poly/ML is being used to produce
industrial-scale software products. Large source files will not break
the Poly/ML system (modules containing thousands of lines of code are
common) nor will large data-structures (each workspace may grow to
32Mb). The speed and code quality of the Poly/ML compiler are both up
to industrial standards - Poly/ML has been used to build large
systems containing significant graphical interaction.


Poly/ML for X
=============

As an added-value option, Poly/ML now features support for programming
with the X Window System. `Poly/ML for X' provides an ML interface to
Xlib, the industry standard C interface to X. The Poly/ML X interface
gives access to all the major Xlib function groups; it also provides ML
operations for `bit-twiddling' operations on plane masks and pixel
values. `Poly/ML for X' may be used to implement fully functional
complex applications - some of these already exist.

We supply a full reference manual detailing Poly/ML's interface to X.
Since X is the industry standard, there are also many good reference
works and programming texts available from third parties.

For novice X users, we provide a number of example Poly/ML programs
which illustrate how to use X to build interactive graphic programs.
For experienced X programmers, the fact that our interface is designed
to resemble the original C interface will allow them to make immediate
use of their valuable skills.

Contact
=======

For more information, please contact Simon Finn at the address below:

Abstract Hardware Limited, 
Howell Building,
Brunel University,
Uxbridge, Middlesex.
UB8 3PH
U.K.

Email: ahl@ahl.co.uk
Phone: +44 (0)895-258501
Fax:   +44 (0)895-258728
Telex: 261173G


------- End of Forwarded Message

