neumann@margaux.inria.fr (Pierre-Louis Neumann) (03/29/90)
This is an announcement of the newly available CAML version V2-6.1.
CAML is a strongly typed, polymorphic and fully functional language
developed by the Formel Project at INRIA since 1984: it is now a
reliable and tested implementation with many librairies and user
contributed software available.
CAML is a high level symbolic programming language, especially suited
for fast prototyping and educational purposes. It has been
successfully used to develop the whole CAML system itself, several
compilers, a proof assistant and theorem prover (the Calculus of
Constructions), the SAM metacompiler, and the SPOCK expert system
generator, among others.
CAML has unique features such as complete integration of lazy and
strict evaluation, powerful macro facilities including user-defined
parsers, safe side-effects on records, vectors and mutable values.
Security and user-friendliness are provided by a type-synthesiser, an
interactive toplevel environment, and debugging tools including a
complete trace package.
The comprehensive documentation consists in 3 volumes:
A Primer introduction (80 pages)
A Reference Manual (470 pages)
An Interfaces Manual (40 pages)
The new version runs on a variety of architectures, including:
-- SUN3
-- SUN4
-- Dec 3100
-- Sony News
-- Apollo
-- Vax
The new version is fully compatible with previous versions of CAML and
includes many new features:
-- A completely integrated parser generator allowing user-defined
syntaxes: the new ``grammar'' construct introduces a grammar
declaration which is statically typechecked and then compiled to
produce a very efficient parser.
-- A simple and powerful pretty-printing facility has been
designed.
-- Records (product types) have been added to the language.
-- Completely general mutable values may be defined and mutation is
statically verified by the typechecker (thus records may be
physically updated).
-- The standard evaluation regime is call by value. However, the user
may define data structures with lazy evaluation, controlled by
annotations. This allows the definition of potentially
infinite data structures such as streams.
-- Dynamic types allows the definition of persistent values, which may
be stored in permanent storage.
Distribution cost is $300 for educational and research purposes.
Site licenses for industry are also available.
CAML is available from ILOG,
2 Avenue Gallieni
94250 Gentilly
France
Electronic mail : chenetie@ilog.fr
Phone: (33 1) 46 63 66 66
Fax: (33 1) 46 63 15 82