calculus translates a specification of an algebraic type system,
input-file, into code representing that system. This takes the
form of a number of files which are generated in the output directory,
output. If no output directory is specified then the current
working directory is used.
Input files and command-line options may be given in any order. Options
always relate to the input files immediately following.
By default, C code implementing the type system is generated, however
this may be changed by means of command-line options.
Specifies that the algebra named name should be used by the
output routines. Unless otherwise specified the last algebra input is
used for output.
Specifies a file containing a list of extra types to calculus.
These are used, for example, to generate extra disk reading and writing
routines in conjunction with the -d option.
Specifies a template file which is used to generate an output file
Causes calculus to generate extra statements in its C code which
includes assertions about null pointers etc. and other code to help
in writing programs using the tool.
Causes calculus to generate disk reading and writing routines
designed to add persistence to the generated type system.
Indicates to calculus that input is a simple input file.
Causes calculus to output a pretty-print of the input algebra
into output, which in this instance in an output file. If no
output file is given then the standard output is used.
Causes calculus to generate printing routines designed for use
in the debugging of programs written using the type system.
Indicates to calculus that input is the output of a
previous -w option.
Causes calculus to generate #pragma token commands describing
the type system. These are designed so that tcc(1) can apply
extremely rigorous type checking to programs written using the type
Causes calculus print its version number.
Causes calculus to output a dump of the input algebra into
output, which in this instance is an output file.
Causes calculus to suppress the vector and vector pointer constructs
in its output.