Week by week

Links will work after the corresponding lecture. Before that, they may give a Not Found or 404 error. Meanwhile, if you would like to take a look at last year's slides, etc., they are available here.

Go to: Week 1, Week 2, Week 3, Week 4, Week 5, Week 6, Week 7, Week 8, Exam,


Week 1

Lecture 1: Introduction. Mon 13-15, August 28, 2017, MA:1

Sign up for lab sessions

Assignment 0. Java, Unix, and Gradle.

Lecture 2: Regular Expressions, Scanning. Tue 10-12. August 29. MA:7

Assignment 1. Scanning and simple parsing.


Week 2

Lecture 3: Context-free grammars. Recursive-descent parsing. Mon 13-15.

Lecture 4: Ambiguities. LL problems. Tue 10-12.

Assignment 2. LR parsing and AST building

Lab session. Thu/Fri


Week 3

Lecture 5: LL parsing. Abstract Syntax Trees. Mon 13-15.

Lecture 6: LR parsing. Visitors. Tue 10-12.

Assignment 3. Visitors, Aspects, and Attribute Grammars.

Lab session. Thu/Fri


Week 4

Lecture 7: Aspects. Attribute Grammars. Mon 13-15.

Lecture 8: Reference attributes, Semantic Analysis. Tue 10-12.

Assignment 4. Semantic analysis using reference attribute grammars.

Lab session. Thu/Fri


Week 5

Lecture 9: Guest lecture by Jesper Öqvist. Mon 13-15.

Lecture 10: Runtime Systems for Procedural Languages. Tue 10-12.

Assignment 5. Interpreter and static analysis

Lab session. Thu/Fri


Week 6

Lecture 11: Code generation. Mon 13-15.

Lecture 12: Hour 1: More on code generation. Hour 2: Guest lecture Tue 10-12.

Assignment 6. Code generation

Lab session. Thu/Fri


Week 7

Lecture 13: Object-oriented languages, Runtime Optimization. Mon 13-15.

Lecture 14: Course review before exam. Tue 10-12.

Catch-up lab session.

Lab session. Thu/Fri

Sign up for exam.

You need to sign up in advance for the exam. The deadline is Monday Oct 16. See info in Swedish or English.


Week 8

Catch-up lab session.

Catch-up lab session.

Study old exams


Exam

At the exam, you may use the following documents. Copies of them will be available at the exam. You do not need to bring your own.

You may also use a dictionary from English to your native language.

Ordinary exam

Reexam