Solutions
Collected here are my solutions to the problem sheets for various lecture courses. It's up to you, dear reader, whether you choose to look at these before you have made a serious attempt at the problems for yourself.
Compilers
Problems appear at the end of chapters in the coursebook. Here is a document that collects them all in one place, with my answers and notes at the end.
- Problem sheets with solutions.
Obiter dicta
- Problem sheet 1: how to use yacc to test for ambiguity.
- The file prob3.diff shows solutions for two programming problems on Problem Sheet 3.
- The file inicheck.ml implements a check that variables are not used before they are initialised.
Digital Systems
All the problem sheets are collected here in one document, with my solutions and notes at the end.
- Collected problem sheets with solutions.
Imperative Programming
Solutions are included with the problems on the problems page.
Programming Languages
- My solutions for all the problems.
- Source for various interepreters in the solutions to Sheet 3: Gzipped tar format, Windows ZIP format.
Object-Oriented Programming
There will be four problem sheets for the course, each corresponding to four lectures. I will endeavour to pace the course so that most of the questions on each sheet can be attempted after attending the corresponding lectures.
- My answers for problem sheet 1.
- My answers for problem sheet 2.
- My answers for problem sheet 3.
- My answers for problem sheet 4.
Sample exam questions
- My answers for the sample questions.
- My answers for the collection paper.
Operating Systems
- My solutions to the problem sheets.
Digital Hardware
- My answers to problem sheet 1.
- My answers to problem sheet 2.
- My answers to problem sheet 3.
- My answers to problem sheet 4.