COMP3012/G53CMP Lecture Note Index

Autumn 2018

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.


Lecture 1: Administrative Details and Introduction

4 October 2018


Lecture 2: Defining Programming Languages

4 October 2018


Lecture 3: Syntactic Analysis: Bottom-Up Parsing

18 October 2018


Lecture 4: Syntactic Analysis: Parser Generators

18 October 2018


Lecture 5: Contextual Analysis: Scope I

25 October 2018


Lecture 6: Contextual Analysis: Scope II

25 October 2018


Lecture 7: A Versatile Design Pattern: Monads

1 November 2018


Lecture 8: Contextual Analysis: Types and Type Systems I

1 November 2018


Lecture 9: Contextual Analysis: Types and Type Systems II

8 November 2018


Lecture 10: Contextual Analysis: Implementing A Type Checker

8 November 2018


Lecture 11: Code Generation I

15 November 2018


Lecture 12 & 13: Code Generation II

15 & 22 November 2018


Lecture 14: Run-Time Organisation I

22 November 2018


Lecture 15: Run Time Organisation II

29 November 2018


Lecture 16: Code Optimization

29 November 2018


Lecture 17 & 18: Register Allocation

6 December 2018


Lecture 19: LLVM: A Real Compiler Backend

13 December 2018


Last updated 13 December 2018.