Semantics of Programming Languages
Principal lecturer: Dr Sam Staton
Taken by: Part IB
Past exam questions (There are comments in the notes about the relevance of older questions.)
Corrections and clarifications for the notes:
Model implementations of the languages
- L1 (in ML),
- L1 (in Java),
- L1 (in Prolog),
- 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
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.
to Rasmus Kyng, Martin Maas, Ludwig Schmidt who found contexts to distinguish the two programs on Slide 199.