Widening is one of the six coercions. It is allowed in strong syntactic positions. This coercion transforms:
bits
value to an unpacked row of booleans.
bytes
value to an unpacked row of characters.
Some implementations (like Algol 68 Genie) extend the meaning of
widening by allowing transformations from, say, int
to
long int
or from long real
to
long long real
, but this is not allowed in the
strict language, which requires using the leng
and
shorten
operators instead.
Simplified [RR 6.5.1.a:d]:
a) widened to SIZETY real FORM: MEEK SIZETY integral FORM. b) widened to structured with SIZETY real field re SIZETY real field im mode FORM: MEEK SIZETY real FORM; widened to SIZETY real FORM. c) widened to row of boolean FORM: MEEK BITS FORM. d) widened to row of character FORM: MEEK BYTES FORM.