INRIA Sophia Antipolis
CtCaml
What is CtCaml?
CtCaml provides a working environment for the caml
language. This environment has been developed using the Centaur
system, a generic interactive programming environment generator. CtCaml
has the following characteristics:
-
Graphical interface:
multiple fonts and colors are used to display programs, highlighting
their structure.
-
Structured editing and presentation mechanisms:
the environment provides ways to edit structurally Caml programs, whole
sub-expressions can be shrunk in one click of the mouse, with syntactic
errors catching.
-
Menu directed editing:
the environment provides menus for editing and transforming new sub-programs,
these menus can easily be extended to incorporate the user's favorite transformations.
-
An advanced (but experimental) type checker:
the environment provides an advanced type checker, allowing the highlighting
of the various sub-expressions involved in a detected type error.
-
Textual explanation of types (experimental):
using its powerful formatting capabilities and a powerful type checking
algorithm, the CtCaml environment can present explanations of the type
of sub-expression in a way that resembles natural language.
-
Reusability and separation between the interface and the type checker:
the various tools are derived from existing compilers; the graphical
interface and the type checker engine run as two separate processes.
Type checking functionalities presented in the CtCaml environment are experimental
and must been seen as examples of what added value type information can
bring to a programming environment.
To know more about CtCaml, you may also want to have a look at the report
``Interactive Programming
Environment for ML'' report.
General Information
CtCaml profits from work done on programming environments, in particular
the Centaur
system,
developed in the CROAP
group at INRIA
Sophia Antipolis.
Laurence Rideau/ INRIA Sophia Antipolis / Laurence.Rideau@inria.fr