G53CMP Lecture Note Index

Autumn 2013

This page will contain links to all electronic material used during the lectures, in particular electronic slides and any major pieces of code. The slides are all in PDF, and there are three versions available for each lecture. The basic version is intended for on-screen viewing only, whereas the 4-up and 9-up versions are mainly intended for printing, putting 4 and 9 slides respectively on each page. (The format of any slides for guest lectures, however, could be different.)


Lecture 1: Administrative Details and Introduction

3 October 2013


Lectures 2: A Complete (Albeit Small) Compiler

4 October 2013


Lecture 3: Defining Programming Languages

10 October 2013


Lecture 4: Syntactic Analysis: Bottom-Up Parsing

11 October 2013


Lecture 5: Syntactic Analysis: Parser Generators

17 October 2013


Lecture 6: Contextual Analysis: Scope I

18 October 2013


Lecture 7: Contextual Analysis: Scope II

24 October 2013


Lecture 8: A Versatile Design Pattern: Monads

25 October 2013


Lecture 9: Contextual Analysis: Types and Type Systems I

7 November 2013


Lecture 10: Contextual Analysis: Types and Type Systems II

8 November 2013


Lecture 11 & 12: Contextual Analysis: Implementing A Type Checker

14 November 2013 (condensed into one hour of lecturing)


Lecture 13: Code Generation I

15 November 2013


Lecture 14 & 15: Code Generation II

21 & 22 November 2013


Lecture 16: Run-Time Organisation I

28 November 2013


Lecture 17: Run Time Organisation II

29 November 2013


Lecture 18 & 19: Register Allocation

5 & 6 December 2013


Lecture 20 & 21: Code Optimization

12 & 13 December 2013


Last updated 10 December 2013.