2.1 Packets

Each Algol 68 source file, which are files using the file extension .a68, contains the definition of a so-called packet. Packets therefore play the role of compilation units, and each packet can be compiled separately to an object file. A set of compiled object files can then be linked in the usual fashion into an executable, archive or shared object by the system linker, without the need of any language-specific link editor or build system.

This compiler supports two different kind of packets:

Future versions of this compiler will eventually support a third kind of packet, oriented to top-down development:

A collection of packets, all of which must be compatible with each other, constitutes either a program or a library. Exactly one of the packets constituting a program shall be a particular program. In libraries at least one packet must be a prelude packet.