Applications written in Caml
Ott
[08-Jan-2007, version
0.10.2,
Alpha]


tool for
semantic definitions of programming languages and calculi.
The tool takes as input a definition of a language syntax and semantic
relations, in a concise and readable ASCII notation that is close to
what one would write in informal mathematics. It builds parsers for
symbolic and concrete terms of the language, generates LaTeX to build
a typeset version of the definition, and generates Coq, HOL, and
Isabelle versions of the definition.
Libraries
Native OCaml libraries
Caml-shift
[12-Aug-2010, version
2010-08-11,
Stable]
two OCaml implementations of Dybvig, Sabry, Peyton-Jones' delimited continuation framework. The framework supports `static' ( shift/ reset) and `dynamic' ( prompt/ control, shift0, control0) delimited continuation operators with multiple, arbitrarily typed prompts.
GenePool
[13-Oct-2008,
Alpha]

GenePool is a framework for writing evolutionary optimization algorithms in OCaml. This library is not a complete solution but rather is a generic skeleton which takes care of the plumbing and nuisances of optimization. You provide GenePool with functions that give meaning to fitness and reproduction and after a specified number of generation, GenePool returns an array of the best "genomes" it evolved.
gprint
[20-Apr-2006,
Development code]
The facility that prints results and types of expressions evaluated at
the top-level is now available anywhere in the program -- in bytecode-
or natively compiled programs. Generic printing is a (perhaps
unintentional) `side-effect' of MetaOCaml -- of the fact that a code
value is not merely AST; the code value also captures the type and the
type environment of variables and other values. Generic printing is a
library that works with the unmodified MetaOCaml (which is _fully_
compatible with the regular OCaml).
Promela
[10-Sep-2012, version
0.4,
Beta]
The PROMELA library is an OCaml library providing types and functions to create, analyze and modify PROMELA programs as used by the Spin model checker.