CeXL - homepage
Standard ML / CeXL Source Code Consists Of:
- Abstract syntax for xi-Calculus
- Runtime values for xi-Calculus interpreter
- Interpreter for xi-Calculus
- Pretty printer for showing xi-Calculus types and restrictions as CeXL types
- Type inference for xi-Calculus
- Naked CeXL to xi-Calculus translation
- A large collection of regression test programs for the binaries
CeXL Binaries Consists Of:
- Pattern-matching redundancy and exhaustiveness is not
checked. This is important, since CeXL requires patterns in let-bindings to
be exhaustive - a difference from Standard ML.
- Absent record fields should only be removed at val-bindings for
types of non-function and non-reference types, which is currently not checked.
This is a change in the language specification, as of version 0.9.3.
- The syntactical constraints for the BNF-grammar in the language specification
are not implemented, which means things like checking that the types list,
bool etc. and the constructors true, false, nil etc. are not redeclared.