This is file README for Moscow ML 2.00 for Linux/Unix (June 2000) EXTENT OF THE IMPLEMENTATION The current version 2.00 of Moscow ML * implements the full Standard ML language, as revised 1997, including Modules and some extensions * yet is backwards compatible with versions prior to 2.00 * implements large parts of the new SML Basis Library * implements separate compilation * can produce compact stand-alone executables (a la Caml Light) * supports quotations and antiquotations, useful for metaprogramming * supports dynamic linking of external functions under Linux (x86 and Alpha), FreeBSD, NetBSD, Solaris, Digital Unix, HP-UX, MacOS, and MS Windows'95/98/NT New in version 2.00 of Moscow ML * The full SML Modules language (structures, signatures, and functors) is now supported, thanks to Claudio Russo. Also, several extensions to the SML Modules language are provided: - higher-order functors: functors may be defined within structures and functors - first-class modules: structures and functors may be packed and then handled as Core language values, which may then be unpacked as structures or functors again - recursive modules: signatures and structures may be recursively defined * Value polymorphism has become friendlier: non-generalizable free type variables are left free, and become instantiated (once only) when the bound variable is used * Added facilities for creating and communicating with subprocesses (structure Unix and Signal from SML Basis Library). * Added facilities for efficient functional generation of HTML code (structure Msp); also supports the writing of ML Server Page scripts. * Added facilities setting and accessing `cookies' in CGI scripts (structure Mosmlcookie), thanks to Hans Molin, Uppsala, Sweden. * The Gdimage structure now produces PNG images (using Thomas Boutell's gd library). SYSTEM REQUIREMENTS Compilation under Unix is best done using GNU make, gcc, and Perl. Abinary installation requires 5 MB disk space; a source installationrequires 25 MB disk space. LIST OF FILES Executables and bytecode files: bin/* Moscow ML top-level system and batch compiler lib/* Bytecode files and standard libraries tools/* Tools to infer unit inter-dependencies Documentation files: install.txt Installation instructions for Linux README This file doc/manual.pdf User manual (PDF format) doc/mosmlref.pdf A compact guide to Moscow ML syntax and primitives doc/mosmllib.pdf Moscow ML library documentation with an index doc/mosmllib/*.html Moscow ML library documentation in HTML format copyrght/* Copyright notices (for Caml Light, SML/NJ, ...) AUTHOR AND CREDITS Moscow ML was written by Sergei Romanenko (roman@keldysh.ru) Keldysh Institute of Applied Mathematics, Russian Academy of Sciences Miusskaya Pl. 4, 125047 Moscow, Russiaand Claudio V. Russo (Claudio.Russo@cl.cam.ac.uk), University of Cambridge. Thanks to Don Sannella at LFCS, Division of Informatics, University of Edinburgh for funding under EPSRC grant GR/K63795and Peter Sestoft (sestoft@dina.kvl.dk), Department of Mathematics and Physics, Royal Veterinary and Agricultural University, Thorvaldsensvej 40, DK-1871 Frederiksberg C, Denmark. Much of the work was done at the Technical University of Denmark, and while visiting AT&T Bell Laboratories, New Jersey, USA. Moscow ML owes much to: * the CAML Light implementation by Xavier Leroy and Damien Doligez (INRIA, Rocquencourt, France); especially the Caml Light bytecode generator and the runtime system; * the ML Kit by Lars Birkedal, Nick Rothwell, Mads Tofte and David Turner (Copenhagen University, Denmark, and Edinburgh University, Scotland); * inspiration from the SML/NJ compiler developed at Princeton University and AT&T Bell Laboratories, New Jersey, USA; * the good work by Doug Currie, Flavors Technology, USA, on the MacOS port and many improvements; and * feedback, contributions, and useful suggestions, in particular from Ken Friis Larsen, but also from Jonas Barklund, Mike Gordon, Michael Norrish, Konrad Slind, Jakob Lichtenberg, Hans Molin, and numerous other people. COPYRIGHT NOTICE FOR MOSCOW ML Moscow ML - a lightweight implementation of Standard ML. Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000 Sergei Romanenko, Moscow, Russia and Peter Sestoft, Copenhagen, Denmark. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License in copyrght/gpl2 for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Note that a number of source files are derived from the Caml Lightdistribution, copyright (C) 1993 INRIA, Rocquencourt, France. Thuscharging money for redistributing Moscow ML may require priorpermission from INRIA; see the INRIA copyright notice in filecopyrght/copyrght.cl. The Caml Light system itself can be obtainedfrom ftp.inria.fr:lang/caml-light. AVAILABILITY * The Moscow ML home page is at http://www.dina.kvl.dk/~sestoft/mosml.html * Moscow ML library documentation http://www.dina.kvl.dk/~sestoft/mosmllib/ * The Linux executables (and documentation) are in ftp://ftp.dina.kvl.dk/pub/mosml/linux-mos20bin.tar.gz * The MS Windows executables are in ftp://ftp.dina.kvl.dk/pub/mosml/win32-mos20bin.zip * The MS DOS executables (and documentation) are in ftp://ftp.dina.kvl.dk/pub/mosml/mos20bin.zip * The Macintosh/MacOS (68k and PPC) executables are in ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20bin.sea.hqx * The Unix source files (and documentation) are in ftp://ftp.dina.kvl.dk/pub/mosml/mos20src.tar.gz * The MacOS modified source files (relative to Unix) are in ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20src.sea.hqx The files are mirrored at ftp://ftp.csd.uu.se/pub/mirror/mosml
This is file README for Moscow ML 2.00 for Linux/Unix (June 2000)
EXTENT OF THE IMPLEMENTATION
The current version 2.00 of Moscow ML
* implements the full Standard ML language, as revised 1997,
including Modules and some extensions
* yet is backwards compatible with versions prior to 2.00
* implements large parts of the new SML Basis Library
* implements separate compilation
* can produce compact stand-alone executables (a la Caml Light)
* supports quotations and antiquotations, useful for metaprogramming
* supports dynamic linking of external functions under Linux (x86
and Alpha), FreeBSD, NetBSD, Solaris, Digital Unix, HP-UX,
MacOS, and MS Windows'95/98/NT
New in version 2.00 of Moscow ML
* The full SML Modules language (structures, signatures, and functors)
is now supported, thanks to Claudio Russo. Also, several extensions
to the SML Modules language are provided:
- higher-order functors: functors may be defined within structures
and functors
- first-class modules: structures and functors may be packed and
then handled as Core language values, which may then be unpacked
as structures or functors again
- recursive modules: signatures and structures may be recursively
defined
* Value polymorphism has become friendlier: non-generalizable free
type variables are left free, and become instantiated (once only)
when the bound variable is used
* Added facilities for creating and communicating with subprocesses
(structure Unix and Signal from SML Basis Library).
* Added facilities for efficient functional generation of HTML code
(structure Msp); also supports the writing of ML Server Page scripts.
* Added facilities setting and accessing `cookies' in CGI scripts
(structure Mosmlcookie), thanks to Hans Molin, Uppsala, Sweden.
* The Gdimage structure now produces PNG images (using Thomas
Boutell's gd library).
SYSTEM REQUIREMENTS
Compilation under Unix is best done using GNU make, gcc, and Perl. A
binary installation requires 5 MB disk space; a source installation
requires 25 MB disk space.
LIST OF FILES
Executables and bytecode files:
bin/* Moscow ML top-level system and batch compiler
lib/* Bytecode files and standard libraries
tools/* Tools to infer unit inter-dependencies
Documentation files:
install.txt Installation instructions for Linux
README This file
doc/manual.pdf User manual (PDF format)
doc/mosmlref.pdf A compact guide to Moscow ML syntax and primitives
doc/mosmllib.pdf Moscow ML library documentation with an index
doc/mosmllib/*.html Moscow ML library documentation in HTML format
copyrght/* Copyright notices (for Caml Light, SML/NJ, ...)
AUTHOR AND CREDITS
Moscow ML was written by
Sergei Romanenko (roman@keldysh.ru)
Keldysh Institute of Applied Mathematics, Russian Academy of Sciences
Miusskaya Pl. 4, 125047 Moscow, Russia
and Claudio V. Russo (Claudio.Russo@cl.cam.ac.uk), University of Cambridge.
Thanks to Don Sannella at LFCS, Division of Informatics,
University of Edinburgh for funding under EPSRC grant GR/K63795
and Peter Sestoft (sestoft@dina.kvl.dk),
Department of Mathematics and Physics, Royal Veterinary and
Agricultural University, Thorvaldsensvej 40, DK-1871 Frederiksberg C,
Denmark. Much of the work was done at the Technical University of
Denmark, and while visiting AT&T Bell Laboratories, New Jersey, USA.
Moscow ML owes much to:
* the CAML Light implementation by Xavier Leroy and Damien Doligez
(INRIA, Rocquencourt, France); especially the Caml Light bytecode
generator and the runtime system;
* the ML Kit by Lars Birkedal, Nick Rothwell, Mads Tofte and David Turner
(Copenhagen University, Denmark, and Edinburgh University, Scotland);
* inspiration from the SML/NJ compiler developed at Princeton
University and AT&T Bell Laboratories, New Jersey, USA;
* the good work by Doug Currie, Flavors Technology, USA, on the
MacOS port and many improvements; and
* feedback, contributions, and useful suggestions, in particular
from Ken Friis Larsen, but also from Jonas Barklund, Mike Gordon,
Michael Norrish, Konrad Slind, Jakob Lichtenberg, Hans Molin, and
numerous other people.
COPYRIGHT NOTICE FOR MOSCOW ML
Moscow ML - a lightweight implementation of Standard ML.
Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000
Sergei Romanenko, Moscow, Russia and Peter Sestoft, Copenhagen, Denmark.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License in copyrght/gpl2 for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Note that a number of source files are derived from the Caml Light
distribution, copyright (C) 1993 INRIA, Rocquencourt, France. Thus
charging money for redistributing Moscow ML may require prior
permission from INRIA; see the INRIA copyright notice in file
copyrght/copyrght.cl. The Caml Light system itself can be obtained
from ftp.inria.fr:lang/caml-light.
AVAILABILITY
* The Moscow ML home page is at
http://www.dina.kvl.dk/~sestoft/mosml.html
* Moscow ML library documentation
http://www.dina.kvl.dk/~sestoft/mosmllib/
* The Linux executables (and documentation) are in
ftp://ftp.dina.kvl.dk/pub/mosml/linux-mos20bin.tar.gz
* The MS Windows executables are in
ftp://ftp.dina.kvl.dk/pub/mosml/win32-mos20bin.zip
* The MS DOS executables (and documentation) are in
ftp://ftp.dina.kvl.dk/pub/mosml/mos20bin.zip
* The Macintosh/MacOS (68k and PPC) executables are in
ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20bin.sea.hqx
* The Unix source files (and documentation) are in
ftp://ftp.dina.kvl.dk/pub/mosml/mos20src.tar.gz
* The MacOS modified source files (relative to Unix) are in
ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20src.sea.hqx
The files are mirrored at
ftp://ftp.csd.uu.se/pub/mirror/mosml