Introduction to Oregano

  • Authors:
  • Daniel M. Berry

  • Affiliations:
  • General Electric Research and Development, Schenectady, New York

  • Venue:
  • ACM SIGPLAN Notices
  • Year:
  • 1971

Quantified Score

Hi-index 0.03

Visualization

Abstract

This paper introduces Oregano, a practical generalization of ALGOL 60. The semantic definition of the language is in terms of an information structure model for its implementation, the contour model. Some of the major features are emphasized, including that of retention (non-deallocation of still accessible cells). The contour model is briefly described as a cell-based, fixed program component model with a retentive deallocation scheme. Modes (data types) are described as cell templates. Then, blocks, declarations, assignments, and pointer handling are illustrated in terms of sequences of pictorial snapshots in the model. A wide variety of heterogeneous and homogeneous multiple values are described using the data structure models of their implementation. Labels and procedures, which can be called recursively, are generalized to the full status of values. Coroutines and tasks are introduced as simple extensions of procedure calls, and various synchronization devices such as locking and events are illustrated. Finally, the practicality and ease of use of the language are demonstrated.