A. Syntax Reference

The machine-readable dialect of CSP
(CSPM)is one result of a research
effort with the primary aim of encouraging the creation of tools for
CSP.
FDR was the first tool to utilise the dialect, and to some extent
FDR and
CSPMcontinue to evolve in parallel, but the basic research results are
publically available (see section Acknowledgements).
The language described here is that implemented by the 2.1 release of
FDR and has many features not present in FDR1.

CSPMcombines the CSP process-algebra with an expression language which,
while inspired by languages like Miranda/Orwell and Haskell/Gofer, has
been adapted to support the idioms of CSP.
The fundamental features of those languages are, however, retained: the
lack of any notion of assignment, the ability to treat functions as
first-class objects, and a lazy reduction strategy.

Scripts

Programming languages are used to describe algorithms in a form which
can be executed.
CSPMincludes a functional-programming language, but its primary purpose is
different: it is there to support the description of parallel systems in
a form which can be automatically manipulated.
CSPMscripts should, therefore, be regarded as defining a number of processes
rather than a program in the usual sense.