Niklaus Wirth (source code)

= Niklaus Wirth
{c}

<Niklaus Wirth> designed <Pascal (programming language)>, <Modula-2> and <Oberon>, connecting language design with <compiler> and system construction. His project account traces their development through implementations, teaching and workstation systems rather than presenting syntax in isolation.<Summary of projects 1962-1999 by Niklaus Wirth>[Pascal, Modula-2 and Oberon sections]{ref}

Oberon illustrates his preference for a small explicit language definition. Its report describes <type extension> of records, allowing a new record type to build on an existing one. A base-typed <pointer> can refer to an extended record, while access to extension-specific fields requires an appropriate type test or guard. The language's value and VAR parameters also specify whether a call receives a value or access to the caller's variable.<The Programming Language Oberon by Niklaus Wirth>[§§6,9.2 and10.1]{ref}