Team Gallium

Overall Objectives
Scientific Foundations
Application Domains
New Results
Contracts and Grants with Industry
Other Grants and Activities

Section: New Results

The Caml language and system

The Objective Caml system

Participants : Xavier Clerc [team SED] , Damien Doligez, Alain Frisch [Lexifi] , Jacques Garrigue [University of Nagoya] , Xavier Leroy, Nicolas Pouillard.

This year, we released two versions of the Objective Caml system. Damien Doligez acted as release manager for both versions. Version 3.11.2, released in January, is a minor release that corrects about 30 problem reports and grants 9 feature wishes. Version 3.12.0, released in August, offers a number of long-awaited new features:

Dynamic contract checking for Caml

Participant : Na Xu.

A contract in a programming language is a formal and checkable interface specification that allows programmers to declare what a function assumes and what a function guarantees. Na Xu used the OCaml 3.11.2 system as an experimental basis for integrating a contract paradigm into the compiler. This prototype supports dynamic contract checking (DCC), that is, contract violation is reported at run-time. It allows OCaml programmers to reason about their program as well as debug their program based on the contract violation messages, which blame precisely the faulty functions.


Logo Inria