Production systems: or can we do better than BNF

  • Authors:
  • Henry F. Ledgard

  • Affiliations:
  • Univ. of Massachusetts, Amherst

  • Venue:
  • Communications of the ACM
  • Year:
  • 1974

Quantified Score

Hi-index 48.23

Visualization

Abstract

Since the development of BNF, the definition of the syntax of programming languages has been almost universally associated with context-free requirements. Yet numerous interesting and difficult issues in syntax stem from the context-sensitive requirements, notably the compatibility between the declaration of an identifier and its uses, the correspondence between actual and formal parameters, and issues arising from block structure.This paper explores the use of a formal notation called Production Systems in providing a readable and complete formal definition of syntax. As a practical illustration, a small but significant subset of PL/I is considered. A more detailed presentation, as well as the application to define abstract syntax and translations between languages, is given in a previous paper by the author.