Assessment

The graded assessment for this course consists of a written exam, and a practical component, each of the counting for 50% of the mark.

The practical component, worth 10 marks overall:

Exam

The exam will be a three hour written exam, on campus, in the last week of the term. You can bring a hand-written A4 cheat sheet (either two single sided, or one double sided).

To prepare for the exam, have a look at the sample exam questions (with solutions for TinyC question) for some more questions of the form you can expect in the exam.

There will be one question about how one of the concepts we discuss in the course is realised in a language of your choice (the language has to be either: C#, C++, Haskell, Scala, Java, or Swift).

The final grade is the average of the exam and the practical component, with grades below 5.5 rounded down to 5, between 5.5 and 6 rounded up to 6. To pass the course, you have to obtain at least 4/10 in the practical component and 4/10 in the exam, and an average of at least 5.5 overall.

Use of AI

For the assignments, even though we advise against the use of AI, we allow the use at Level 4 as defined in the UU AI Index. To summarise, you can use it, but you need to document how you used it and submit the explanation, and it is your responsibility to make sure that you fully understand the solution you submit. Please note that the purpose of the assignments is to help you understand the concepts and prepare you for the exam. Using AI defeats that purpose, as it becomes easy (and tempting) to do them without understanding the concepts and you lose the benefit in exam preparation.
Last modified: Sun Nov 9 16:20:29 CET 2025