Section: New Results
The Objective Caml system
Participants : Xavier Clerc [ team SED ] , Damien Doligez, Alain Frisch [ Lexifi ] , Jacques Garrigue [ University of Nagoya ] , Xavier Leroy, Maxence Guesdon [ team SED ] , Luc Maranget [ EPI Moscova ] , Michel Mauny, Nicolas Pouillard, Pierre Weis [ EPI Estime ] .
This year, we released version 3.11.1 of the Objective Caml system. This is a minor release that corrects about 50 problem reports. Damien Doligez acted as release manager for this version.
Three important extensions of the Caml language were designed and implemented, and will be made available in the next major release of Objective Caml:
-
Polymorphic recursion: programmers can now declare polymorphic type schemes for recursive and mutually-recursive function definitions, enabling these definitions to reference themselves at different types. (Jacques Garrigue.)
-
First-class modules: the ability to encapsulate modules as value of the core language, manipulate them like any other value, then extract them back to module expressions. This design extends an earlier proposal by Claudio Russo implemented in Moscow ML [48] . (Alain Frisch.)
-
A new type parameterization mechanism whereas a module-level type name, local to a core-language expression, is mapped to a core-language type variable outside of that expression. (Alain Frisch.)
Xavier Clerc, research engineer at SED, joined the Caml development team at 40% of his time in early 2009. He improved and updated the replay debugger, studied cross-compilation issues, restructured the Caml test suite, and participated in bug-fixing.
Xavier Leroy and Xavier Clerc converted the Caml source repository from CVS to Subversion, making it easier for non-INRIA developers to access the repository.