Report Number: CS-TR-65-20
Institution: Stanford University, Department of Computer Science
Title: EULER: a generalization of ALGOL, and its formal definition
Author: Wirth, Niklaus
Author: Weber, Helmut
Date: April 1965
Abstract: A method for defining programming languages is developed
which introduces a rigorous relationship between structure
and meaning. The structure of a language is defined by a
phrase structure syntax, the meaning in terms of the effects
which the execution of a sequence of interpretation rules
exerts upon a fixed set of variables, called the Environment.
There exists a one-to-one correspondence between syntactic
rules and interpretation rules, and the sequence of executed
interpretation rules is determined by the sequence of
corresponding syntactic reductions which constitute a parse.
The individual interpretation rules are explained in terms of
an elementary and obvious algorithmic notation. A
constructive method for evaluating a text is provided, and
for certain decidable classes of languages their unambiguity
is proven. As an example, a generalization of ALGOL is
described in full detail to demonstrate that concepts like
block-structure, procedures, parameters etc. can be defined
adequately and precisely by this method.
http://i.stanford.edu/pub/cstr/reports/cs/tr/65/20/CS-TR-65-20.pdf