Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
The interface for a module that defines the operators of a language
The type of the operator, usually represented as a sum type.
Each operator should be have the form
Foo of 'a * 'a * ... * 'a
Where the free variables 'a
are arguments to the operator Foo
.
val fold : ('a -> 'b -> 'a) -> 'a -> 'b t -> 'a
val to_string : string t -> string