ALGOL 68S

ALGOL 68S is a programming language designed as a subset of ALGOL 68, to allow compiling via a one-pass compiler. It was mostly for numerical analysis.

Implementations
A compiler for ALGOL 68S was available for the PDP-11, written in the language BLISS. The multiprocessor version designed for the C.mmp has been preserved at the PDP Unix Preservation Society archive.

Charles H. Lindsey created another implementation of ALGOL 68, named ALGOL 68S, for Sun-3, Sun SPARC (under SunOS 4.1), Sun SPARC (under Solaris 2), Atari ST (under GEMDOS) and Acorn Archimedes (under RISC OS).

Chief differences from ALGOL 68
The main differences between ALGOL 68 and 68S, as summarised from Appendix 4 of the Informal Introduction, include:
 * No union
 * No flex, but strings are handled specially
 * No arrays inside structures (but references to arrays were allowed) and a similar restriction on arrays of arrays (multidimensional arrays are nonetheless permitted)
 * Limits on use of long and short to aid implementing on small computers
 * No heap
 * No parallel processing
 * Limits on the order of declaration and other small syntactic differences to allow one-pass compiling
 * No formats