The Free On-line Dictionary of Computing (30 December 2018):
Standard ML
(SML) Originally an attempt by Robin Milner
ca. 1984 to unify the dialects of
ML, SML has evolved into a robust general-purpose language.
Later versions have been maintained by D. B. MacQueen, Lal
George , and J. H. Reppy
at AT&T, and A. W. Appel
.
SML is functional, with imperative programming features.
It is environment based and strict. It adds to ML the
call-by-pattern of Hope, recursive data types,
reference types, typed exceptions, and modules. (The
"core" language excludes the modules).
Standard ML is polymorphically typed and its module system
supports flexible yet secure large-scale programming.
Standard ML of New Jersey is an optimising native-code
compiler for Standard ML that is written in Standard ML. It
runs on a wide range of architectures. The distribution also
contains: an extensive library - The Standard ML of New Jersey
Library, including detailed documentation; Concurrent ML
(CML); eXene - an elegant interface to X11 (based on
CML); SourceGroup - a separate compilation and "make"
facility.
Implementations: SML/NJ, POPLOG ML, Poly/ML, Edinburgh
SML, ANU ML, Micro ML, lazy sml2c.
sml2c compiles to C. See also ML Kit.
Version 0.93 runs on 68000, SPARC, MIPS, HPPA,
RS/6000, Intel 386, Intel 486 and Macintosh.
Manual
(http://dcs.napier.ac.uk/course-notes/sml/manual.html).
FTP from ATT (ftp://research.att.com/dist/ml/).
FTP from Suny SB (ftp://sbcs.sunysb.edu/).
Mailing list: sml-request@cs.cmu.edu.
["A Proposal for Standard ML", R. Milner, ACM Symp on LISP and
Functional Prog 1984, pp. 184-197].
(1995-12-24)