home search a-z help
University of Cambridge Computer Laboratory
Comparative Programming Languages

Comparative Programming Languages: Comparisons between programming languages
2005-06

Principal lecturer: Dr Marcelo Fiore
Taken by: Part IB, Part II (General), Diploma

Syllabus
Past exam questions

Lecture slides
  • Introduction and motivation.
  • The first procedural language: FORTRAN (1957).
  • The first declarative language: LISP (1959).
  • Block-structured procedural languages: Algol (1960), BCPL (1967), Pascal (1970), C (1972).
  • Object-oriented languages --- Concepts and origins: Simula (1969), Smalltalk (1980).
        Code: Objects in ML!?
  • Data abstraction and modularity: ML module system (1987).
        Code: Generic sorting.
  • Reading material
  • Martin Richards' 2004-05 course.
  • J. McCarthy. Recursive functions of symbolic expressions and their computation by machine.
        Communications of the ACM, 3(4):184--195, 1960.
  • B. Kerninghan. Why Pascal is not my favorite programming language.
        AT&T Bell Laboratories. Computing Science Technical Report No. 100, 1981.
  • B. Stroustrup. What is Object-Oriented Programming? (1991 revised version).
        Proc. 1st European Software Festival. February, 1991.
  • A. C. Kay. The early history of Smalltalk.
        ACM SIGPLAN Notices, Volume 28, No. 3, 1993.
  • A. Koenig. An anecdote about ML type inference.
        USENIX Symp. on Very High Level Languages, 1994.
  • Main books
  • J.C. Mitchell. Concepts in programming languages.
        Cambridge University Press, 2003.
  • T.W.Pratt and M.V.Zelkowitz. Programming Languages: Design and implementation (3rd edition).
        Prentice Hall, 1999.
  • Feedback
  • Please provide feedback through the online lecture course feedback form.