Compiler Construction

Short Name
Compilerbau
Module Code
CS1019
Module Coordinator
  • Prof. Dr. Michael Jäger
Teacher
  • Prof. Dr. Hellwig Geisse
  • Prof. Dr. Michael Jäger
  • Prof. Dr. Thomas Karl Letschert
Short Description
The course presents important concepts of modern programming languages and their implementation using compiler generating tools.
Learning Objectives

Understanding important concepts of modern programming languages.

Understanding the function and structure of a compiler. To understand Formal Language definitions and develop themselves. Ability to construct a compiler using compiler generating tools an know relative to Automata Theory. Implement simple languages. Process complex data structures. Apply design patterns. Understand and generate machine language programs. Organize a complex project. Cooperate in a team.

Contents
  • Syntax and semantics of programming languages
  • Discussion of selected language concepts
  • Compiler architectur
  • Lexical analysis
  • Syntax analysis
  • Abstract syntax and attributed grammars
  • Semantic analysis
  • Runtime Environment
  • Code Generation
  • Register Allocation
Duration in Semester
1
Instruction Language
German
Total Effort
6.0 CrP; an estimated 180 hours, of which approximately 90 are spent in class.
Weekly School Hours
6
Method of Instruction

Lecture 4 SWS, practical course 2 SWS

Requirements for the awarding of Credit Points

Examination prerequisite: Project work, Examination: Written or oral exam (The form of the examination will be announced to the students in a timely and appropriate manner)

Evaluation Standard
according to examination regulations (§ 9)
Availability
Semesterly
References
  • J. Mitchell: Concepts in Programming Languages Cambridge University Press
  • Ullman, Lam, Sethi, Aho: Compiler: Prinzipien, Techniken und Werkzeuge Pearson Studium – IT
  • W. Appel: Modern Compiler Implementation in Java Cambridge University Press
  • D. Grune, H. E. Bal, J. H. Jacobs, K. G. Langendoen: Modern Compiler Design John Wiley
Prerequisite for Modules