Some papers related to Objective Caml
Textbooks and tutorials
- Développement d'applications avec Objective Caml,
Emmanuel Chailloux, Pascal Manoury, Bruno Pagano,
O'Reilly, Paris, april 2000.
A comprehensive (742 pages) book on Objective Caml, covering not only
the core language, but also modules, objects and classes, threads and systems
programming, and interoperability with C.
The text of this book (in French) is
available
on-line.
-
Jason Hickey's
introduction to
Objective Caml as used in his
compiler design course
at Caltech.
-
The Objective Caml manual
begins with short tutorials on the core language, objects and classes,
and modules.
-
Didier Rémy's APPSEM
course notes on Objective Caml (graduate level).
General overview
The object system
Theoretical foundations of the module system
The bytecode compiler and bytecode interpreter
-
Xavier Leroy,
The ZINC
experiment, an economical implementation of the ML language.
Technical report 117, INRIA, 1990.
A description of the ZINC compiler, which later evolved into Caml Light,
then into Objective Caml. Large parts of this report are out of date, but it
is still valuable as a description of the abstract machine used in
Caml Light and (with some further simplifications and speed improvements)
in Objective Caml.
The native-code compiler
-
Xavier Leroy,
The
effectiveness of type-based unboxing. Workshop Types in Compilation '97,
Amsterdam.
An overview and experimental comparison of several
data representation strategies, including the one used in the
Objective Caml native-code compiler.
The garbage collector
- Peter Sestoft --
The garbage collector used in Caml Light --
e-mail message, October 1994. --
7k text file
- Damien Doligez and Xavier Leroy --
A concurrent, generational garbage collector for a multithreaded
implementation of ML --
In Principles of Programming Languages --
ACM Press, January 1993. --
59k gzipped PostScript file
- Damien Doligez and Georges Gonthier --
Portable, Unobtrusive Garbage Collection for Multiprocessor Systems
--
In Principles of Programming Languages --
ACM Press, January 1994. --
85k gzipped PostScript file
- Damien Doligez --
Conception, réalisation et certification d'un glaneur de cellules
concurrent --
PhD thesis (in French), Université Paris 7, May 1995. --
427k gzipped PostScript file
Implementation of the module system
-
Xavier Leroy,
A modular module system,
Journal of Functional Programming, 10(3):269-303, 2000.
A description of a simplified implementation of the O'Caml module system,
emphasizing its independence w.r.t. the base language (Caml).
-
François Pottier,
Implémentation d'un système de modules évolué en Caml-Light. Research report 2449, INRIA, 1995.
An earlier prototype implementation of modules in Caml Light, based on
stamps instead of path equivalence. In French.