Module Modes_libSource
Modal axes
Nonmodal jkind axes (soon to be nontrivialities)
Source
type !'a axis = | Locality : locality axis| Portability : portability axis| Contention : contention axis| Statefulness : statefulness axis| Visibility : visibility axis| Linearity : linearity axis| Uniqueness : uniqueness axis| Yielding : yielding axis| Forkable : forkable axis| Staticity : staticity axis
Source
type !'a nonmodal_axis = | Externality : externality nonmodal_axis| Nullability : nullability nonmodal_axis| Separability : separability nonmodal_axis
Modal axes
Nonmodal jkind axes (soon to be nontrivialities)
cross crossing mode strengthens mode as it would on a variable of kind _ mod crossing.
In the compiler, this is known as cross_left.
uncross crossing mode is the weakest mode mode' such that cross crossing mode' is at least as strong as mode. It acts as a sort of inverse to cross.
In the compiler, this is known as cross_right.