DESCRIPTION:

This directory contains a file to patch the Caml-Light distribution
and add simple existential type variables to its type system,
following Laufer and Odersky.

The resulting system is source compatible with the Caml-Light
distribution (more programs are accepted).

AUTHORS:

Michel Mauny     (Michel.Mauny@inria.fr)
Francois Pottier (Francois.Pottier@ens.fr)

CONTENTS:

	exist.patch	A diff file to apply with the `patch' command.
	exist.doc	A text file briefly explaining the new features.
	exist.ps.Z	A compressed PostScript file giving
			information on this extension of the type
			system, and references to Laufer and Odersky's
			original work.

INSTALLATION:

Go to the *** root directory *** of the Caml-Light distribution (i.e.
the place where you first compiled it). The `src' directory must be a
direct child of your current directory.

Files to be patched are in the src/toplevel and etc/compiler
directories.

1. Apply the patch, i.e.

        % patch -p0 < exist.patch

This step is quite verbose (well, patch is verbose), but applying the
patch should succeed.

2. Rebuild a new system (cf. the INSTALL file in the Caml-Light
distribution).

3. Install it.

BUGS:

Relaxation of scope restrictions for "match" and "let" should be the
same.

Other bug reports are welcome.
