inf019 - Compiler Construction (Complete module description)

inf019 - Compiler Construction (Complete module description)

Original version English PDF Download
Module label Compiler Construction
Modulkürzel inf019
Credit points 6.0 KP
Workload 180 h
Institute directory Department of Computing Science
Verwendbarkeit des Moduls
  • Master of Education Programme (Gymnasium) Computing Science (Master of Education) > Wahlpflichtmodule (Praktische Informatik)
Zuständige Personen
  • Lehrenden, Die im Modul (Prüfungsberechtigt)
  • Vogel-Sonnenschein, Ute (module responsibility)
Prerequisites
Skills to be acquired in this module
Professional competence
The students:
  • name the structure of a compiler and each part of the compiling process of a programming language
  • describe the standards of each phase of a compiling process
  • understand and evaluate typical characteristics as well as advantages and disadvantages of different methods of the compilation stages
  • practically apply the learned methods of the compilation stages
  • evaluate the use of a compilation generator


Methodological competence
The students:
  • link the automata theory and the formal language concepts regarding the compiler construction


Social competence
The students:
  • develop and present solutions of given problems in small teams
Module contents
The module provides all steps of a compiler: scanner, parser, semantic analysis, intermediate code generation, code optimisation and machine code generation. Each step is introduced by its current methods. For the parsing step LL-Parser and LR-Parser are presented. The code optimisation step is introduced by different procedures with different conditions for the register optimisation. The lecture essentially follows the book of Aho, Lam, Sethi, Ullman which can validly be described as a compiler construction classic.

During practice the introduced methods are practically deepened by small examples and tasks, which the students must carry out independently. A compiler generator (typically ANTLR) is used to demonstrate the practical use of such a tool to the students.
Literaturempfehlungen
Essential:
  • Handout


Recommented:
  • Aho, Lam, Sethi, Ullman: Compilers. Principles, Techniques, and Tools, 2nd ed., Addison Wesley, 2006
Links
Language of instruction German
Duration (semesters) 1 Semester
Module frequency jährlich
Module capacity unlimited
Lehrveranstaltungsform Comment SWS Frequency Workload of compulsory attendance
Lecture 2 WiSe 28
Exercises 2 WiSe 28
Präsenzzeit Modul insgesamt 56 h
Examination Prüfungszeiten Type of examination
Final exam of module
At the end of the lecture period
Oral exam