Objective Caml 1.00:
--------------------

* Merge of Jerome Vouillon and Didier Remy's object-oriented
extensions.

* All libraries: all "new" functions renamed to "create" because "new"
is now a reserved keyword.

* Compilation of "or" patterns (pat1 | pat2) completely revised to
avoid code size explosion.

* Compiler support for preprocessing source files (-pp flag).

* Library construction: flag -linkall to force linking of all units in
a library.

* Native-code compiler: port to the Sparc under NetBSD.

* Toplevel: fixed bug when tracing several times the same function
under different names.

* New format for marshaling arbitrary data structures, allows
marshaling to/from strings.

* Standard library: new module Genlex (configurable lexer for streams)

* Thread library: much better support for I/O and blocking system calls.

* Graphics library: faster reclaimation of unused pixmaps.

* Unix library: new functions {set,clear}_nonblock, {set,clear}_close_on_exec,
{set,get}itimer, inet_addr_any, {get,set}sockopt.

* Dynlink library: added support for linking libraries (.cma files).

Caml Special Light 1.15:
------------------------

* Caml Special Light now runs under Windows NT and 95. Many thanks to
Kevin Gallo (Microsoft Research) who contributed his initial port.

* csllex now generates tables for a table-driven automaton.
The resulting lexers are smaller and run faster.

* Completely automatic configuration script.

* Typing: more stringent checking of module type definitions against
manifest module type specifications.

* Toplevel: recursive definitions of values now working.

* Native-code compiler, all platforms:
        toplevel "let"s with refutable patterns now working;
        fixed bug in assignment to float record fields;
        direct support for floating-point negation and absolute value.

* Native-code compiler, x86: fixed bug with tail calls (with more than
4 arguments) from a function with a one-word stack frame.

* Native-code compiler, Sparc: problem with -compact fixed.

* Thread library: support for non-blocking writes; scheduler revised.

* Unix library: bug in gethostbyaddr fixed; bounds checking for read,
write, etc.

Caml Special Light 1.14:
------------------------

* cslopt ported to the PowerPC/RS6000 architecture. Better support for
AIX in the bytecode system as well.

* cslopt, all platforms: fixed bug in live range splitting around catch/exit.

* cslopt for the Intel (floating-point wars, chapter 4):
implemented Ershov's algorithm to minimize floating-point stack usage;
out-of-order pops fixed.

* Several bug fixes in callbacks and signals.

Caml Special Light 1.13:
------------------------

* Pattern-matching compilation revised to factor out accesses inside
matched structures.

* Callbacks and signals now supported in cslopt.
Signals are only detected at allocation points, though.
Added callback functions with 2 and 3 arguments.

* More explicit error messages when a native-code program aborts due
to array or string bound violations.

* In patterns, "C _" allowed even if the constructor C has several arguments.

* && and || allowed as alternate syntax for & and or.

* cslopt for the Intel: code generation for floating-point
operations entirely redone for the third time (a pox on whomever at
Intel decided to organize the floating-point registers as a stack).

* cslopt for the Sparc: don't use Sparc V8 smul and sdiv instructions,
emulation on V7 processors is abysmal.

Caml Special Light 1.12:
------------------------

* Fixed an embarrassing bug with references to floats.

Caml Special Light 1.11:
------------------------

* Streams and stream parsers a la Caml Light are back (thanks to
Daniel de Rauglaudre).

* User-level concurrent threads, with low-level shared memory primitives
(locks and conditions) as well as channel-based communication primitives
with first-class synchronous events, in the style of Reppy's CML.

* The native-code compiler has been ported to the HP PA-RISC processor
running under NextStep (sorry, no HPUX, its linker keeps dumping
core on me).

* References not captured in a function are optimized into variables.

* Fixed several bugs related to exceptions.

* Floats behave a little more as specified in the IEEE standard
(believe it or not, but x < y is not the negation of x >= y).

* Lower memory consumption for the native-code compiler.

Caml Special Light 1.10:
------------------------

* Many bug fixes (too many to list here).

* Module language: introduction of a "with module" notation over
signatures for concise sharing of all type components of a signature;
better support for concrete types in signatures.

* Native-code compiler: the Intel 386 version has been ported to
NextStep and FreeBSD, and generates better code (especially for
floats)

* Tools and libraries: the Caml Light profiler and library for
arbitrary-precision arithmetic have been ported (thanks to John
Malecki and Victor Manuel Gulias Fernandez); better docs for the Unix
and regexp libraries.

Caml Special Light 1.07:
------------------------

* Syntax: optional ;; allowed in compilation units and structures
(back by popular demand)

* cslopt: 
generic handling of float arrays fixed
direct function application when the function expr is not a path fixed
compilation of "let rec" over values fixed
multiple definitions of a value name in a module correctly handled
no calls to ranlib in Solaris

* csltop: #trace now working

* Standard library: added List.memq; documentation of Array fixed.

Caml Special Light 1.06:
------------------------

* First public release.
