A shortsety is a sequence of one or more short bold
tags. The term follows the fashion of the Revised Report, where the
suffix -ety means “or empty”.
The Algol 68 modes int, real, compl,
bits and bytes can be prefixed with any number
of short tag words. The effect of each short is
to half the precision of the mode.
At some point, however, a “saturation” point is reached where the
addition of extra short has no further effect on the mode.
Where that point resides is up to the particular implementation.
For example, if the precision of int is four bytes or
32-bit, the precision of short int is 16-bit, and the
precision of short short int is 8-bit.
A shortsety can also be used in an integral denotation in order to specify the mode of the denotation. For example in the formula:
short 20 + short 30
The denotations short 20 and short 30 are of mode
short int, which determines its precision. The reason why
it is important to specify the mode in the denotations is that in
Algol 68 it is not legal to widen to a mode having a different
precision, so the following identity declaration is not legal:
short short int number = 10; # BAD #
This is because the mode of the denotation 100 is int
whereas the expected mode is short short int. This
can be achieved by a shortsety in the denotation:
short short int number = short short 10;
Note that some Algol 68 implementations allow to widen to modes having a different precision.
Simplified [RR 1.2.1.F]:
F) SHORTSETY :: short SHORTSETY ; EMPTY.