norsk norsk&engelsk / norwegian&english

Course Description IMT3051 - Compilers (2004/2005)

ECTS Credits10
LanguageNorwegian alternatively english
  • IMT1031 - Fundamental Programming
  • IMT1081 - Object-Oriented Programming

The students should have knowledge and abilities sufficient for developing and understanding simple compilers and interpreters. Furthermore, they should be acquainted with principles for optimisation, compilation of object oriented languages and register allocation.


Compiler phases and passes
Lexical analysis: regular expressions
Syntactic analysis: BNF and EBNF
Abstract syntax and syntax trees
LL(n) and LR(1) parsers
Principles for run-time organisation
Code generation: simple translation to assembly
Principles for optimisation and error reporting

Study MethodsLectures, Laboratory Work, Exercises, Project Works
AssessmentEvaluation of Laboratory Exercise(s) (counts 10%, evaluated by lecturer)
Evaluation of Project(s) (counts 20%, evaluated by lecturer)
Written Exam, 3 hours (counts 70%, evaluated by lecturer and an examiner)
Each part must be individually approved of.
Grading SystemAlphabetical Scale, A (best) - F (fail)
Course RequirementsNone