Structured documentation

This paper presents the formalism of Production Systems and investigates its application to define the complete syntax of a computer language and its translation into a target language. Several properties appear well-suited to this task: (a) the formalism can be used to specify exactly the syntax of a computer language, including context-sensitlve requirements. (b) the specification of the context-sensitive requirements on syntax can be isolated from the context-free requirements. (c) the same formalism can be used to specify the translation of one language into another (d) the notation has been reworked many times to promote ease of readability. The following example applications of production systems are given: (a) a specification of the complete syntax of a small but difficult subset of PL/I. (b) a specification of the translation of lambda-calculus expressions into normal form.