See the official user manual for the most up-to-date version of the information on this page.
A declaration associates a name with a term or a module. (Refer to the module system for details about reference and managing the associations in scope.)
Declarations consist of a signature part and a definition part, which may be given separately.
The signature part of a declaration must come before any use of that name.