groff: Naming Conventions
4.3.8 Naming Conventions
------------------------
The following conventions are used for names of macros, strings and
number registers. External names available to documents that use the
'groff -ms' macros contain only uppercase letters and digits.
Internally the macros are divided into modules; naming conventions
are as follows:
* Names used only within one module are of the form MODULE'*'NAME.
* Names used outside the module in which they are defined are of the
form MODULE'@'NAME.
* Names associated with a particular environment are of the form
ENVIRONMENT':'NAME; these are used only within the 'par' module.
* NAME does not have a module prefix.
* Constructed names used to implement arrays are of the form
ARRAY'!'INDEX.
Thus the groff ms macros reserve the following names:
* Names containing the characters '*', '@', and ':'.
* Names containing only uppercase letters and digits.