Course Lecturers: Elizabeth Scott and Thomas van Binsbergen
There is a complete set of Course Lecture Notes for this course.
These notes cover all the material in the course,
however you should consult text books for further explanation and
worked exercises.
Recommended books are listed in the Course Lecture Notes.
You should download the Notes
and use them as a basis for understanding the lectures.
Here are the CS1870 Course Lecture Notes which you may find useful for revision.
Here is an example LR DFA direct construction
Here are the assignment sheets from 2017 ass1 ass2 ass3 ass4 which you may find useful for additional practice.
There are 4 mandatory assessed assignments for this course. The assignments are due in teaching weeks 3,6,8 and 11.
Upload PDF images of your coursework via Moodle. Paper submissions cannot be accepted. Please make sure you name is on each sheet of your submission, and that it is legible when printed.
Assignment 1     due FRIDAY 19th OCTOBER 26th Oct: General feedback
Assignment 2     due FRIDAY 9th NOVEMBER 20th Nov: General feedback
Assignment 3     due FRIDAY 23rd NOVEMBER 7th Dec: General feedback
Assignment 4     due MONDAY 10th DECEMBER 6th Jan: General feedback
Some of the lectures will be run as hands on laboratory sessions in
which students will use the compiler gerator package RDP.
Using RDP you will be able to
apply your understanding of the LL(1) grammar conditions to write
language specifications which admit recursive descent parsers.
Lab Session 1 9am Friday 26th Oct HITT lab
Lab Session 2 9am Friday 16th Nov HITT Lab     
Lab Session 3 9am Friday 30th Nov HITT Lab
This course applies many of the ideas covered in CS1870,
particularly automata theory and
assembly programming.
It applies the basic mathematical skills
developed in CS1860.
It applies the knowledge you have built up of various programming
languages; your experience will help you to understand the purpose and
usefulness of the techniques studied.
See lecture diary for topics covered in lecturers so far.
See course deadlines for formal details of the course organisation.