A | |
| AstPositions |
This module provides shortcuts for AST position handling.
|
B | |
| BasicSetEquations |
This module provides a solver for equations involving set constants,
variables, and disjoint sums (i.e.
|
C | |
| Constraint |
This module manages a data structure for constraint in a multi-equation
framework.
|
| ConstraintPrettyPrinter |
The constraint over equality between terms.
|
| CoreAlgebra |
This module implements a core algebra of first order terms.
|
E | |
| Env |
Environment who maps keys whose type is
'a to values of type 'b.
|
| Errors | handle f runs f and exits with exit status 0.
|
I | |
| InfiniteArray |
This module implements infinite arrays.
|
| IntRank |
This module describes an ordered type
t equipped with a
distinguished constant none.
|
M | |
| Make [BasicSetEquations] | |
| Mark |
This module implements a very simple notion of ``mark''.
|
| MiniAlgebra |
This module provides the type algebra for the Mini language.
|
| MiniAst |
The abstract syntax of MiniML programs.
|
| MiniConstraintPrinter |
This module implements a pretty printer for the constraint of the
Mini language.
|
| MiniInfer |
This module expresses the problem of type inference for MiniML
programs to the problem of constraint solving by a transformation
of program into typing constraints.
|
| MiniKindInferencer |
This module provides a simple inference engine for the kinds
of the Mini type system.
|
| MiniPrettyPrinter |
This modules instanciates
PrettyPrinter for the Mini language.
|
| MiniSolver |
This module provides a constraint solver based on unification
under a mixed prefix.
|
| MiniSyntacticAnalysis |
This module provides a parser for program and a parser for constraint.
|
| MiniTypes |
This module transforms types from the user's syntax to the
internal representation of the inference engine.
|
| MiniTypingEnvironment | TypingEnvironment implements two mappings used during the constraint
generation.
|
| MiniTypingExceptions |
This modules declares the exceptions raised by the type inference engine.
|
| Misc |
This module contains miscellaneous utilities.
|
| MultiEquation |
This module implements a data structure for multi-equations.
|
P | |
| ParsingExceptions |
This module handles parsing errors.
|
| Positions |
Extension of standard library's positions.
|
| PrettyPrinter |
This module provides a common formatting interface to
pretty-print in LaTeX, raw text or module Format mode.
|
This module provides a simple pretty-printer for the terms
maintained by a unifier.
| |
| Processing |
A simple task manager.
|
R | |
| RowLabel [CoreAlgebra] |
The universe of row labels.
|
S | |
| Solver |
This module provides a constraint solver based on unification
under a mixed prefix.
|
| StringMap [Misc] |
Maps over strings.
|
| StringSet [Misc] |
Sets of strings.
|
U | |
| Unifier |
This module implements unification of (ranked) multi-equations
over a row algebra, that is, an algebra obtained by extending a
free algebra
A with rows (see module CoreAlgebra).
|
| UnionFind |
This module implements a simple and efficient union/find algorithm.
|