Module Statements implements the data type for typed statements that are obtained from the type-checker implemented in module UtyStmts and are given to the compile functions.
Type | Description |
DeclStmt is a data type for typed statements with different kinds of declarations that refer to the contained statement:
|
|
typed Quartz modules consist of the following entries (some of them refer to the file from which the module has been read from):
|
|
Statements is a discriminated union type for storing the core statements of the Quartz language. The QName arguments denote the program locations where the control flow may rest during macro steps except for ModuleCall whose QName arguments denote the name of the call (instance) and the called module (the other arguments are the argument expressions that may be optional). |
Function or value | Description |
Substitution of variables by arbitrary expressions in statements; the substitution rho is a map from QName to Expr as in case of expressions (see file Core/Expressions.sml).
|