Types and Programming Languages

Types and Programming Languages is a Level 10 course given in Semester 2, aimed at 4th year students.
Check the ITO course descriptor for the syllabus.


Lectures are held on Mondays and Thursdays at 10am in JCMB 3315.

See the lecture log for a summary of what was covered in each lecture. You are recommended to take your own notes in lectures and consult the course textbook (TAPL) for details.


Exercises are based around OCaml implementations of the type systems studied.

The starting points for these implementations are given by the checkers described in TAPL, available for download here.

Exercise 1: Security types for FOFL.
There is an implementation of FOFL supplied for the practical: fofl.tgz.
Issued: 8th February. Due: 24th February.

Exercise 2: Security types for FOFL (Part 2).
There is an implementation of FOFL with Unit types supplied for the practical: foflunit.tgz. Or you can use your own from Part 1.
Issued: 2nd March. Due: 16th March.


Most of the course is based closely on the textbook Types and Programming Languages by Benjamin C. Pierce, MIT Press, 2002.
References for other material will be provided as necessary in lectures.

Here are some other useful resources:


The exam paper will contain three questions of which you should answer two. The time allowed will be 1hr45 minutes.

David Aspinall
Last modified: Fri Jan 26 12:06:21 GMT 2007

Home : Teaching : Courses : Tpl 

Informatics Forum, 10 Crichton Street, Edinburgh, EH8 9AB, Scotland, UK
Tel: +44 131 651 5661, Fax: +44 131 651 1426, E-mail: school-office@inf.ed.ac.uk
Please contact our webadmin with any comments or corrections. Logging and Cookies
Unless explicitly stated otherwise, all material is copyright © The University of Edinburgh