Compiler Construction

Modulnummer
CS1019
Modulverantwortliche
Michael Jäger
Dozenten
  • Hellwig Geisse
  • Michael Jäger
  • Thomas Letschert
  • Kurzbeschreibung
    The course presents important concepts of modern programming languages and their implementation using compiler generating tools.
    Qualifikations- und Lernziele

    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.

    Lerninhalte
    • 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
    Moduldauer (Semester)
    1
    Unterrichtssprache
    Deutsch
    Gesamtaufwand
    6 CrP; 180 Stunden, davon etwa 90 Stunden Präsenzzeit.
    Semesterwochenstunden
    6
    Lernformen

    Lecture 4 SWS, practical course 2 SWS

    Geprüfte Leistung

    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)

    Bewertungsstandard
    according to examination regulations (§ 9)
    Häufigkeit des Angebots
    Semesterly
    Literatur
    • 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
    Voraussetzung für Module