(Originally "CAML" - Categorical Abstract Machine Language) A version of ML
by G. Huet, G. Cousineau, Ascander Suarez, Pierre Weis, Michel Mauny and others of INRIA
. CAML is intermediate between LCF ML and SML
[in what sense?]. It has first-class
functions, static type inference with polymorphic
types, user-defined variant types and product types, and pattern matching
. It is built on a proprietary run-time system.
The CAML V3.1 implementation added lazy
data structures, a "grammar
" mechanism for interfacing with the Yacc parser generator
, pretty-printing tools, high-performance arbitrary-precision arithmetic, and a complete library.
in 1990 Xavier Leroy and Damien Doligez designed a new implementation called CAML Light
, freeing the previous implementation from too many experimental high-level features, and more importantly, from the old Le_Lisp back-end.
Following the addition of a native-code compiler and a powerful module
system in 1995 and of the object
layer in 1996, the project's name was changed to Objective CAML. In 2000, Jacques Garrigue added labeled and optional arguments and anonymous variants.
Objective CAML Home (http://ocaml.org/). Usenet
["The CAML Reference Manual", P. Weis et al, TR INRIA-ENS, 1989].