Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > d07d7ab417d79053e7e0155c99e1a1c8 > files > 2118

mlton-20100608-3.fc15.i686.rpm

This directory contains the MLton implementation of the Basis Library.
The files are grouped in directories in the same way that the
corresponding modules are grouped in the basis library documentation.
All other implementation files are in the misc/ and libs/ directories.

The basis is constructed using the ML Basis system.

There are several special files that make use of non-SML extensions.

misc/primitive.sml
posix/primitve.sml
  These are not Standard ML. They describe all of the primitives and
  C routines used in the basis. 

top-level/overloads.sml
  Not Standard ML.
  Uses the notation _overload <var> : <ty> as <var> (and <var>)*


Dead Code Elimination
----------------------------------------
In order to compile small programs rapidly, a pass of dead code
elimination (core-ml/dead-code.{sig,fun}) is run in order to eliminate
as much of the basis library as possible.  The dead code elimination
algorithm used is not safe in general, and only works because the
basis library implementation has special properties:
  * it terminates
  * it performs no I/O
The dead code elimination includes the minimal set of
declarations from the basis so that there are no free variables in the
user program (or basis).  It has a special hack to include all
bindings of the form 

        val _ = ...