In the
roff
language,
numbers and measurements can be stored in
registers.
Many built-in registers exist,
supplying anything from components of the date
to details of formatting parameters;
some of these are read-only.
You can also define your own.
See Identifiers,
for information on constructing a valid name for a register.
Each register (except read-only ones) can be assigned a format, causing its value to interpolate with leading zeroes, in Roman numerals, or alphabetically. Some read-only registers are string-valued, meaning that they interpolate text and lack a format.