module-type | ::= | { join-specification } |
| | { caml-specification } | |
join-specification | ::= | val name : typexpr |
| | open module-name | |
caml-specification | ::= | external name : typexpr = string-literal |
| | primitive name : typexpr = string-literal | |
| | type [ ( ' ident { , ' ident } )] typeconstr-name [ = string-literal ] | |
| | open module-name |
module-expr | ::= | { top-expr [ ;;] } |
top-expr | ::= | decl |
| | do expr | |
| | spawn process | |
| | open module-name |