UG3 Compiling Techniques 2018/2019
Previous year course content:
2017-18 webpage
Assessment
This is a courwork-only course with no exam. The coursework will consists of two assignments.
The first one will be developing a compiler from scratch in Java, targeting the MIPS instruction set architecture.
The second assignment will be about implementing a compiler pass in an existing compiler infrastructure in C++ (LLVM).
Your mark will simply be a function of the number of test programs your compiler is able to compile correctly.
Your coursework will be
assessed daily via an
automated testing framework allowing you to always know how you are progressing.
The coursework description is available here:
2018-19 Coursework instructions (on gitlab)
Deadlines
- Coursework Part 1: Thursday 11 October 2018, 11am
- Coursework Part 2: Thursday 25 October 2018, 11am
- Coursework Part 3: Thursday 15 November 2018, 11am
- Coursework Part 4: Monday 14 January 2019, 10am (no extension possible!)
Please note that for this course there is no possibility of submitting late without requesting an extension to the ITO beforehand. The mark will be determined by the version of your code present in your git repository (master branch) on the day/time of the deadline.
Demo
There will be a mandatory demonstration of your coursework taking place on Thursday 29 November 2018.
Timetable
This module runs in Semester 1 and is taught by
Christophe Dubach with LLVM lectures taught by
Aaron Smith.
The first lecture will be on Tuesday 18 Sep. 2018.
Please note that the Tuesday lecture is 2 hours long.
The schedule for the
lectures is:
There is one lab session of 2 hours per week accompanying these lectures
starting in week 1.
The first lab will be on Thursday 20th Sep. 2018.
Getting help
- Piazza: The primary source of help will be through the Piazza online platform.
Please enroll via this link.
All questions should be asked on Piazza first before emailing the lecturer or any of the tutors unless it is a private matter.
- Office hours: Wednesdays, 10am-11am, IF 1.12
If you are not able to attend, email Christophe to arrange for a meeting outside the office hours.
- Labs: Feel free to raise any questions regarding the lectures or coursework during the lab sessions.
Course information
- Lecture notes
- Coursework
- Course information
- Informatics policies
Christophe Dubach, christophe.dubach@ed.ac.uk.