The Zélus compiler is called zeluc. Given a list of options and a filename, it transforms Zélus source code into OCaml source code.
zeluc [option] filename
where options are:
-v Set verbose mode -version The version of the compiler -I <dir> Add <dir> to the list of include directories -i Print types -ic Print causality types -where Locate standard libray -stdlib <dir> Directory for the standard library -nopervasives Do not load the pervasives module -typeonly Stop after typing -s <node> Simulates the node <node> and generates a file <node>.ml For hybrid programs, compile with: bigarray.cma unix.cma -I +sundials sundials_cvode.cma zllib.cma -sampling <p> Sets the sampling period to p (float <= 1.0) -check <n> Check that the simulated node returns true for n steps -gtk2 Use lablgtk2 interface. Compile with: -I +lablgtk2 lablgtk.cma zllibgtk.cma -dzero Turn on discrete zero-crossing detection -nocausality (undocumented) -noinit (undocumented) -inline <n> Level of inlining -help Display this list of options --help Display this list of options
Three kinds of arguments are accepted:
.zls
are interpreted as Zélus source
files. These files must contain sequences of node declarations.
The zeluc compiler turns .zls
files into a
compiled interface f.zci
and an OCaml file f.ml
.
The .ml
file defines the corresponding transition functions for the
values defined in the input file..zli
are interpreted as Zélus
interface files.
These files define type signatures for values implemented elsewhere.
The zeluc compiler turns .zli
files into a
compiled interface f.zci
..mli
are interpreted as OCaml
interface files.
The zeluc compiler turns .mli
files into a
compiled interface f.zci
.
The values defined in f.mli
are considered to be a scalars.
The distribution and manual are available at http://zelus.di.ens.fr.
/usr/local/bin/zeluc | the compiler |
/usr/local/lib/zeluc | the standard library |