Hierarchical language definition

  • Authors:
  • Gregor V. Bochmann

  • Affiliations:
  • Dept Informatique, U. de Montréal

  • Venue:
  • Proceeding of ACM SIGPLAN - SIGOPS interface meeting on Programming languages - operating systems
  • Year:
  • 1973

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes a project for the hierarchical definition and implementation of languages. In the spirit of structured programming [1] and in analogy to the hierarchical construction of operating systems [2,3] we define high level languages, which are suitable for the design of operating and other software systems, in several levels of abstraction. In particular, we describe in this paper how an intermediate, machine independent basic language can be used to express the actions of a given high level language in terms of simple actions of the basic language. In conjunction with a translator writing system, this allows a compact and readable formal definition of the syntax and semantics [4,5] of the high level language, which is in fact a description of the compiler which translates this language into the basic language. This definition is independent of a particular computer, however, an implementation of the basic language must be furnished. We intend to use the basic language to describe modules which are embedded in a general system for multiple processes. The language consists of a kind of macro instructions most of which can be implemented in a straight forward manner. Some more complicated instructions, such as primitives for inter-process communication, can be implemented through a hierarchical construction process [2,3] as indicated in section III (see also figure 1).