The aim of this chapter is to describe the grammar of units in a fairly rigorous manner. The chapter covers units, contexts and coercions, as well as a number of lesser, but still important, ideas such as casts and balancing. In describing some of the grammatical aspects of the language in previous chapters, it has been necessary to gloss over or distort some of the facts. The definitive truth about such matters is in this chapter.
An Algol 68 program consists of a closed VOID
clause which
means that any value yielded by the closed clause will be voided. Any
closed clause can be used including conditional and loop clauses. It
is unusual to write a program which starts other than with
BEGIN
(and ends other than with END
), but there is
nothing in the definition of the language to preclude it. On our
round tour of units, we shall start at the bottom and work up.