                          CONCURRENT ML
                         (version 0.9.6)

                       October 11th, 1991

              Copyright (c) 1990,1991 by John H. Reppy


This is the fourth release of Concurrent ML (CML).  It is available
free of charge under an X-windows style copyright (see the COPYRIGHT
file).  You need version 0.74 (or later) of SML/NJ to run this
release.

Concurrent ML is a concurrent extension of Standard ML, supporting
dynamic thread creation, synchronous message passing on synchronous
channels, and first-class synchronous operations.  First-class
synchronous operations allow users to tailor their synchronization
abstractions for their application.  CML also supports both stream
I/O and low-level I/O in an integrated fashion.  CML is being used
in two large applications at Cornell: a multi-threaded interface to
the X-windows protocol, and a distributed implementation of the
Nuprl theorem proving environment.  Full details of the CML language
can be found in the CML manual, which includes a tutorial introduction
to the system.

We are eager to receive your comments, bug reports and constructive
criticism.  You can send electronic mail to

  cml-bugs@cs.cornell.edu

or surface mail to

  John H. Reppy
  Department of Computer Science
  Upson Hall
  Cornell University
  Ithaca, NY 14853
  USA
  phone: (607) 255-5579

CML is distributed as a compressed tar file available via anonymous
ftp from ftp.cs.cornell.edu.  The tar file includes source, examples
and documentation.  The manual is also available as a separate compressed
postscript file.  To obtain the distribution, connect to ftp.cs.cornell.edu,
use the login id "anonymous" and your name as the password and go to the
directory "/pub."  There you will find the files

  CML-0.9.6.tar.Z    -- the complete distribution (including manual)
  CMLDOC-0.9.6.ps.Z  -- the manual

If you just want to examine the manual, then copy the second file; if
you want the whole distribution, then copy the first.  Remember to
switch to binary mode before you get the file you want.  Here is a
sample ftp dialog:

  % ftp ftp.cs.cornell.edu
  Name: anonymous
  Password: <your-name@your-machine>
  ftp> cd pub
  ftp> binary
  ftp> get CML-0.9.6.tar.Z
  ftp> quit

After you have transferred the file, you can install the distribution
directory tree by the command

  % zcat CML-0.9.6.tar.Z | tar -xvf -

This creates the following directory tree below your current directory:

  cml-0.9.6/src       -- the CML source
  cml-0.9.6/library   -- source for library modules
  cml-0.9.6/doc       -- the CML manual and related documentation
  cml-0.9.6/examples  -- source for most of the examples in the manual

The CML manual contains instructions for installing and running CML.
