Standard ML of New Jersey User's Guide
Standard ML of New Jersey (SML/NJ) is a compiler, interactive
system, and programming environment for the Standard ML language.
Installation
SML/NJ is available for free
on the World-Wide Web; follow the installation instructions there.
Documentation
SML/NJ is described by the following documents:
- The ML Programming Language
-
Several
books,
tutorials,
and
FAQs
on the Standard ML programming language are available.
- The SML/NJ Interactive System
-
How to get started with sml, how to compile and
run programs.
-
The Standard ML Basis Library
- This describes the "library" functions and interfaces
that are part of the ML standard. This includes modules for
I/O, operating-system interface, arithmetic on integers, reals,
and words (unsigned integers), mathematical functions, operations on
strings and substrings, and so on.
-
Compilation Manager
- The SML/NJ compilation manager CM
organizes and optimizes the compilation
process. CM calculates and caches the
dependence graph between modules. When a module has been edited
and is recompiled, CM compares the export type-signature of the new module
to that of the old, to minimize the number of modules that are recompiled.
( HTML or Postscript)
- The Standard ML of New Jersey Library
- The SML/NJ Library contains library and utility functions that
are not part of the standard Standard. The SML/NJ library
includes modules for binary search trees, adjustable arrays,
and other useful data structures.
- Special features of SML/NJ
- Standard ML of New Jersey supports some extensions to the
Standard ML language, such as first-class continuations, higher-order
functors, and so on.
- The SMLofNJ structure
- This structure contains runtime-system interface and operating-system
interface functions that are not part of the international standard.
- The Compiler structure
- This structure contains user-settable flags to control the
operation of the compiler and interactive system, and also interfaces
to individual phases of the SML/NJ compiler.
- Programming Tools
-
ML-Lex
lexical-analyzer generator.
ML-Yacc parser generator.
- SML '97 Conversion Guide
-
The Standard ML '97 language is almost, but not quite, compatible
with the 1990 definition supported by earlier versions of SML/NJ;
the conversion guide explains the differents, and gives examples
of how to upgrade existing SML'90 programs.
- SML/NJ Error Messages
-
An explanation of the error messages printed by the SML/NJ compiler.
Downloading the Documentation
The directory tree of the
SML/NJ web page documentation is available for downloading as a
compressed tar file that can be installed on a local machine for faster
access. The
Basis documentation pages are also available as a gzipped tar
file. If you install both the SML/NJ web pages and the Basis web
pages locally, you should connect them by replacing the smlnj/basis
directory with (a symbolic link to) the main Basis directory.
| SML/NJ Home page
|
Send your comments to sml-nj@research.bell-labs.com
Copyright © 1998,
Lucent Technologies; Bell Laboratories.