Computer Laboratory > Teaching > Course material 2009–10 > Semantics of Programming Languages

 

Semantics of Programming Languages
2009–10

Principal lecturer: Dr Sam Staton
Taken by: Part IB
Syllabus
Past exam questions (There are comments in the notes about the relevance of older questions.)

Notes: colour and monochrome. Large print: colour and monochrome.

Corrections and clarifications for the notes: (txt).

Model implementations of the languages

  • L1 (in ML),
  • L1 (in Java),
  • L1 (in Prolog), and
  • L2 (in ML).

Moscow ML is installed on the Intel Lab machines. If you want to work with the implementations on your own machine instead, there are Linux, Windows, and Mac versions of Moscow ML available here.

Extras

In Lectures 2 and 12 I demonstrated an implementation of L1 written in Prolog. You can download GNU Prolog from www.gprolog.org.

In Lecture 6 I demonstrated a call-by-name language, Haskell. You can download the Glasgow Haskell Compiler from www.haskell.org.

Congratulations to Rasmus Kyng, Martin Maas, Ludwig Schmidt who found contexts to distinguish the two programs on Slide 199.