Fundamental Concepts in Programming Languages

  • Authors:
  • Christopher Strachey

  • Affiliations:
  • Reader in Computation at Oxford University, Programming Research Group, 45 Banbury Road, Oxford, UK

  • Venue:
  • Higher-Order and Symbolic Computation
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper forms the substance of a course of lectures given at theInternational Summer School in Computer Programming at Copenhagen inAugust, 1967. The lectures were originally given from notes and thepaper was written after the course was finished. In spite of this,and only partly because of the shortage of time, the paperstill retains many of the shortcomings of a lecture course. The chiefof these are an uncertainty of aim—it is never quite clear what sortof audience there will be for such lectures—and an associatedswitching from formal to informal modes of presentation which may wellbe less acceptable in print than it is natural in the lecture room.For these (and other) faults, I apologise to the reader.There are numerous references throughout the course to CPL [1–3]. This is a programminglanguage which has been under development since 1962 at Cambridge andLondon and Oxford. It has served as a vehicle for research into bothprogramming languages and the design of compilers. Partialimplementations exist at Cambridge and London. The language is stillevolving so that there is no definitive manual available yet. We hopeto reach another resting point in its evolution quite soon and toproduce a compiler and reference manuals for this version. Thecompiler will probably be written in such a way that it is relativelyeasyto transfer it to another machine, and in the first instancewe hope to establish it on three or four machines more or less at thesame time.The lack of a precise formulation for CPL should not causemuch difficulty in this course, as we are primarily concerned withthe ideas and concepts involved rather than with theirprecise representation in a programming language.