A new version of the SML images are available for pre-alpha tryout.  Except
for an upcoming bug fix in the module system, these images represent the
versions of the SML compiler and SourceGroup that will be released from New
Jersey as the standard SML/NJ within two weeks.

They live in the directory /afs/cs/misc/sml/@sys/alpha/.a74bin.  The new
sourcegroup library is in /afs/cs/misc/sml/@sys/alpha/.a74lib-sg.  The
.a74lib-sg/doc directory should be up to date.  These new images are only
available for pmax_mach and sun4_mach.

The following changes in SourceGroup will effect users directly:


1. The argument to SourceGroup.create is of type groupDescription.  The
names of the constructors were changed in this release:

    OLD                                NEW
    ---                                ---
  datatype groupDescription =     datatype groupDescription =
     Manual of string list           Connections of string list
   | Auto of string list           | Automatic of string list    
   | Library of group list         | Library of group list     
   | Main of group list            | Include of group list

You will need to translate these names in your group definitions.


2. SourceGroup now maintains file information on a global basis, rather
than on a group basis.  This means that one can redefine a group, possibly
adding or deleting some files, and the information about existing files
won't be lost as it is now.


3. A new flag was added to the compiler.  
     val System.Control.Print.pathnames :int ref = 1000

This indicates how many directory components to print when printing a pathname
in compilation messages.  If System.Control.Print.pathnames <= 0, then print
only the filename part.  For example, when System.Control.Print.pathnames = 2,
print "/afs/cs.cmu.edu/misc/sml/build/74/lib/mlyacc/base.sml" as
".../lib/mlyacc/base.sml".


4. Target file generation and the compiling environment work well for most
cases.  However, some people have had trouble with them.  If you want to punt
target files and the compiling environment you can use SourceGroup and compile
in the top-level environment through the function "IO.use".  To do this, use
the file /afs/cs/misc/sml/@sys/alpha/.a74lib-sg/use-only.sml, before doing
anything else.  Then (make SourceAction.doLoadSource g) will compile group g
with IO.use.


5. There is a known bug that raises the exception RunBind.  If your
SML source files are fully functorized with no free references, you won't
tickle this bug.  SourceGroup will now issue a warning for all files
that will tickle this bug.  Those files can be compiled without using
target files.  Reading their target files will raise the exception RunBind.
