Computer Laboratory

Course pages 2014–15

Concepts in Programming Languages

Handouts

Supervision question sets courtesy of Andrew Rice

Notes by topic

  1. Introduction and motivation.
    Supplementary reading material:
  2. The first procedural language: FORTRAN (1954-58).
    Supplementary reading material:
  3. The first declarative language: LISP (1958-62).
    Supplementary reading material:
  4. Block-structured procedural languages: Algol (1958-68) and Pascal (1970).
    Appendix: BCPL (1967) and C (1971-78)
    Supplementary reading material:
  5. Object-oriented languages --- Concepts and origins: SIMULA (1964-67) and Smalltalk (1971-80).
    SML code: Objects in SML!?
    Programming language: Squeak.
    Supplementary reading material:
  6. Languages for concurrency and parallelism
    • Types in programming languages: ML (1973-1978).
      Supplementary reading material:
    • Data abstraction and modularity: SML Modules (1984-97).
      Supplementary reading material:
    • A modern language design: Scala (2004-2006).
      Programming language: Scala.
      Supplementary reading material:
    • Miscellaneous concepts.

    Books

    Further reading material