Skip to main content
  • Book
  • © 1997

Algol-like Languages

Birkhäuser

Part of the book series: Progress in Theoretical Computer Science (PTCS)

Buy it now

Buying options

eBook USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, log in via an institution to check for access.

Table of contents (11 chapters)

  1. Front Matter

    Pages i-vii
  2. Functor-Category Semantics

    1. Front Matter

      Pages 1-1
    2. Functor Categories and Store Shapes

      • Frank J. Oles
      Pages 3-12
  3. Specification Logic

    1. Front Matter

      Pages 39-39
    2. Semantical Analysis of Specification Logic

      • Robert D. Tennent
      Pages 41-64
    3. Semantical Analysis of Specification Logic, 2

      • Peter W. O’Hearn, Robert D. Tennent
      Pages 65-93
  4. Procedures and Local Variables

    1. Front Matter

      Pages 95-95
    2. Parametricity and Local Variables

      • Peter W. O’Hearn, Robert D. Tennent
      Pages 109-163
  5. Interference, Irreversibility, and Concurrency

    1. Front Matter

      Pages 187-187
    2. Syntactic Control of Interference Revisited

      • Peter W. O’Hearn, A. John Power, Makoto Takeyama, Robert D. Tennent
      Pages 189-225
    3. The Essence of Parallel Algol

      • Stephen Brookes
      Pages 331-348
  6. Back Matter

    Pages 349-349

About this book

To construct a compiler for a modern higher-level programming languagel one needs to structure the translation to a machine-like intermediate language in a way that reflects the semantics of the language. little is said about such struc­ turing in compiler texts that are intended to cover a wide variety of program­ ming languages. More is said in the Iiterature on semantics-directed compiler construction [1] but here too the viewpoint is very general (though limited to 1 languages with a finite number of syntactic types). On the other handl there is a considerable body of work using the continuation-passing transformation to structure compilers for the specific case of call-by-value languages such as SCHEME and ML [21 3]. ln this paperl we will describe a method of structuring the translation of ALGOL-like languages that is based on the functor-category semantics devel­ oped by Reynolds [4] and Oles [51 6]. An alternative approach using category theory to structure compilers is the early work of F. L. Morris [7]1 which anticipates our treatment of boolean expressionsl but does not deal with procedures. 2 Types and Syntax An ALGOL-like language is a typed lambda calculus with an unusual repertoire of primitive types. Throughout most of this paper we assume that the primi­ tive types are comm(and) int(eger)exp(ression) int(eger)acc(eptor) int(eger)var(iable) I and that the set 8 of types is the least set containing these primitive types and closed under the binary operation -.

Editors and Affiliations

  • Dept. of Computer Science, Queen Mary & Westfield College, England

    Peter W. O’Hearn

  • Dept. of Computing and Information Science, Queen’s University, Kingston, Canada

    Robert D. Tennent

Bibliographic Information

Buy it now

Buying options

eBook USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access