1File readme.w32 for Moscow ML 2.00 for Win95/98/NT/2000 (June 2000)
2
3
4EXTENT OF THE IMPLEMENTATION
5
6The current version 2.00 of Moscow ML
7
8    * implements the full Standard ML language, as revised 1997,
9      including Modules and some extensions
10    * yet is backwards compatible with versions prior to 2.00
11    * implements large parts of the new SML Basis Library
12    * implements separate compilation
13    * can produce compact stand-alone executables (a la Caml Light)
14    * supports quotations and antiquotations, useful for metaprogramming
15    * supports dynamic linking of external functions under Linux (x86
16      and Alpha), FreeBSD, NetBSD, Solaris, Digital Unix, HP-UX,
17      MacOS, and MS Windows'95/98/NT
18
19New in version 2.00 of Moscow ML
20
21   * The full SML Modules language (structures, signatures, and functors)
22     is now supported, thanks to Claudio Russo.  Also, several extensions
23     to the SML Modules language are provided:
24      - higher-order functors: functors may be defined within structures
25        and functors
26      - first-class modules: structures and functors may be packed and
27        then handled as Core language values, which may then be unpacked
28        as structures or functors again
29      - recursive modules: signatures and structures may be recursively
30        defined
31   * Value polymorphism has become friendlier: non-generalizable free
32     type variables are left free, and become instantiated (once only)
33     when the bound variable is used
34   * Added facilities for creating and communicating with subprocesses
35     (structure Unix and Signal from SML Basis Library).
36   * Added facilities for efficient functional generation of HTML code
37     (structure Msp); also supports the writing of ML Server Page scripts.
38   * Added facilities setting and accessing `cookies' in CGI scripts
39     (structure Mosmlcookie), thanks to Hans Molin, Uppsala, Sweden.
40   * The Gdimage structure now produces PNG images (using Thomas
41     Boutell's gd library).
42
43SYSTEM REQUIREMENTS
44
45Compilation under Unix is best done using GNU make, gcc, and Perl.  A
46binary installation requires 5 MB disk space; a source installation
47requires 25 MB disk space.
48
49LIST OF FILES
50
51Executables and bytecode files:
52    bin/*               Moscow ML top-level system and batch compiler
53    lib/*               Bytecode files and standard libraries
54    tools/*             Tools to infer unit inter-dependencies
55
56Documentation files:
57    install.txt         Installation instructions for Linux
58    README              This file
59    doc/manual.pdf      User manual (PDF format)
60    doc/mosmlref.pdf    A compact guide to Moscow ML syntax and primitives
61    doc/mosmllib.pdf    Moscow ML library documentation with an index
62    doc/mosmllib/*.html Moscow ML library documentation in HTML format
63    copyrght/*          Copyright notices (for Caml Light, SML/NJ, ...)
64
65AUTHOR AND CREDITS
66
67Moscow ML was written by
68    Sergei Romanenko (roman@keldysh.ru)
69    Keldysh Institute of Applied Mathematics, Russian Academy of Sciences
70    Miusskaya Pl. 4, 125047 Moscow, Russia
71and Claudio V. Russo (Claudio.Russo@cl.cam.ac.uk), University of Cambridge.
72    Thanks to Don Sannella at LFCS, Division of Informatics,
73    University of Edinburgh for funding under EPSRC grant GR/K63795
74and Peter Sestoft (sestoft@dina.kvl.dk),
75    Department of Mathematics and Physics, Royal Veterinary and
76    Agricultural University, Thorvaldsensvej 40, DK-1871 Frederiksberg C,
77    Denmark.  Much of the work was done at the Technical University of
78    Denmark, and while visiting AT&T Bell Laboratories, New Jersey, USA.
79
80Moscow ML owes much to:
81    * the CAML Light implementation by Xavier Leroy and Damien Doligez
82      (INRIA, Rocquencourt, France); especially the Caml Light bytecode
83      generator and the runtime system;
84    * the ML Kit by Lars Birkedal, Nick Rothwell, Mads Tofte and David Turner
85      (Copenhagen University, Denmark, and Edinburgh University, Scotland);
86    * inspiration from the SML/NJ compiler developed at Princeton
87      University and AT&T Bell Laboratories, New Jersey, USA;
88    * the good work by Doug Currie, Flavors Technology, USA, on the
89      MacOS port and many improvements; and
90    * feedback, contributions, and useful suggestions, in particular
91      from Ken Friis Larsen, but also from Jonas Barklund, Mike Gordon,
92      Michael Norrish, Konrad Slind, Jakob Lichtenberg, Hans Molin, and
93      numerous other people.
94
95COPYRIGHT NOTICE FOR MOSCOW ML
96
97    Moscow ML - a lightweight implementation of Standard ML.
98    Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000
99    Sergei Romanenko, Moscow, Russia and Peter Sestoft, Copenhagen, Denmark.
100
101    This program is free software; you can redistribute it and/or
102    modify it under the terms of the GNU General Public License
103    as published by the Free Software Foundation; either version 2
104    of the License, or (at your option) any later version.
105
106    This program is distributed in the hope that it will be useful,
107    but WITHOUT ANY WARRANTY; without even the implied warranty of
108    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
109    GNU General Public License in copyrght/gpl2 for more details.
110
111    You should have received a copy of the GNU General Public License
112    along with this program; if not, write to the Free Software
113    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
114
115Note that a number of source files are derived from the Caml Light
116distribution, copyright (C) 1993 INRIA, Rocquencourt, France.  Thus
117charging money for redistributing Moscow ML may require prior
118permission from INRIA; see the INRIA copyright notice in file
119copyrght/copyrght.cl.  The Caml Light system itself can be obtained
120from ftp.inria.fr:lang/caml-light.
121
122AVAILABILITY
123
124    * The Moscow ML home page is at
125        http://www.dina.kvl.dk/~sestoft/mosml.html
126    * Moscow ML library documentation
127        http://www.dina.kvl.dk/~sestoft/mosmllib/
128    * The Linux executables (and documentation) are in
129        ftp://ftp.dina.kvl.dk/pub/mosml/linux-mos20bin.tar.gz
130    * The MS Windows executables are in
131        ftp://ftp.dina.kvl.dk/pub/mosml/win32-mos20bin.zip
132    * The MS DOS executables (and documentation) are in
133        ftp://ftp.dina.kvl.dk/pub/mosml/mos20bin.zip
134    * The Macintosh/MacOS (68k and PPC) executables are in
135        ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20bin.sea.hqx
136    * The Unix source files (and documentation) are in
137        ftp://ftp.dina.kvl.dk/pub/mosml/mos20src.tar.gz
138    * The MacOS modified source files (relative to Unix) are in
139        ftp://ftp.dina.kvl.dk/pub/mosml/mac-mos20src.sea.hqx
140
141The files are mirrored at
142        ftp://ftp.csd.uu.se/pub/mirror/mosml
143