621.401 (21S) Compiler Construction
Overview
For further information regarding teaching on campus, please visit: https://www.aau.at/en/corona.
- Lecturer
- LV Nummer Südostverbund INO23001UL
- Course title german Compiler Construction
- Type Practical class (continuous assessment course )
- Course model Online course
- Hours per Week 2.0
- ECTS credits 4.0
- Registrations 23 (30 max.)
- Organisational unit
- Language of instruction English
- possible language(s) of the assessment German , English
- Course begins on 03.03.2021
- eLearning Go to Moodle course
Time and place
Course Information
Intended learning outcomes
Studierende können die Konzepte des Übersetzerbaus in Übungsaufgaben anwenden und einen funktionierenden Compiler erklären und erweitern.
Teaching methodology including the use of eLearning tools
Die Studierenden erhalten wöchentlich Arbeitsaufträge im Zusammenhang mit dem Compiler-Projekt sowie mit der Compiler-Theorie. Die Lösungen werden in UE-Einheiten (in Videokonferenzen) präsentiert und diskutiert sowie zur Beurteilung abgegeben. Die Bereitstellung von Unterlagen, die Abgabe von Lösungen und die Bewertung erfolgen über die E-Learning-Plattform Moodle.
Course content
- Untersuchung und Erweiterung eines funktionierenden Compilers
- Lexikalische Analyse, endliche Automaten
- Kontextfreie Grammatiken, Kellerautomaten
- Syntaktische Analyse (Parsing)
- Attributgrammatiken
- Symboltabellen
- Laufzeitumgebungen
- Code-Erzeugung
Prior knowledge expected
- Rechnerorganisation (MIPS-Assembler)
- Theoretische Informatik (Formale Sprachen, Automaten)
Literature
Aho – Lam – Sethi – Ullman: Compilers, 2nd ed., Pearson, 2006. Deutsche Auflage (2008) in der "Lehrbuchsammlung" der Bibliothek verfügbar.
Intended learning outcomes
Students can apply the concepts of compiler construction to some exercises,
and explain and extend a working compiler.
Teaching methodology including the use of eLearning tools
Students are assigned weekly homework exercises related to both the compiler
project and compiler theory. Solutions are presented and discussed in (online) class
meetings (using BigBlueButton video conferencing) and submitted for grading.
All provisioning of materials, submissions, and grading are handled on Moodle
e-learning platform.
Course content
- Investigating and extending a working compiler
- Lexical analysis, finite automata
- Context-free grammars, push-down automata
- Syntactical analysis (parsing)
- Syntax-directed translation, attribute grammars
- Static correctness checking
- Run-time environments
- Code generation
Prior knowledge expected
- Computer organization - MIPS assembler
- Theoretical computer science - formal languages, automata
Literature
Aho – Lam – Sethi – Ullman: Compilers, 2nd ed., Pearson, 2006. German edition (2008) available in "Lehrbuchsammlung" of local library.
Examination information
Examination methodology
- Abgabe und Präsentation von Übungsaufgaben
- Abgabe von Code und Berichten zu einem funktionierenden Compiler
- Einzelarbeit (keine Gruppenarbeit)
Examination topic(s)
- Übungsaufgaben zum Vorlesungsinhalt
- Bereitgestellte und von Studierenden erweiterte Compiler-Implementierung
Assessment criteria / Standards of assessment for examinations
- Übungsaufgaben: 40%, entsprechend der Anzahl der gelösten Übungsaufgaben.
- Compiler-Projekt: 60%, entsprechend der Qualität des abgegebenen Codes und der Berichte.
- Minimum für positive Beurteilung: 20% für Übungsaufgaben UND 30% für Compiler-Projekt.
Details der Bewertungskriterien werden zu LV-Beginn im Moodle bereitgestellt.
Examination methodology
- Submission and presentation of homework exercises.
- Submission of code and reports related to working compiler.
- All individual work, no group work.
Examination topic(s)
- Exercises related to lecture content.
- Provided and extended compiler implementation.
Assessment criteria / Standards of assessment for examinations
- Homework exercises: 40%, according to number of prepared (checked and submitted) exercises.
- Compiler project: 60%, according to quality of submitted code and reports.
- Minimum to pass: 20% for homework exercises AND 30% for compiler project.
Details of grading rules are made available in Moodle upon start of the course.
Grading scheme
Grade / Grade grading schemePosition in the curriculum
- Teacher training programme Computer Sciences and Computer Sciences Management (Secondary School Teacher Accreditation)
(SKZ: 884, Version: 04W.7)
-
Stage two
-
Subject: Praktische und Technische Informatik (LI 2.2)
(Compulsory subject)
-
Übersetzerbau (
2.0h PR / 3.0 ECTS)
- 621.401 Compiler Construction (2.0h UE / 4.0 ECTS)
-
Übersetzerbau (
2.0h PR / 3.0 ECTS)
-
Subject: Praktische und Technische Informatik (LI 2.2)
(Compulsory subject)
-
Stage two
- Master-Lehramtsstudium Master Unterrichtsfach Informatik
(SKZ: 514, Version: 19W.2)
-
Subject: Gebundene Wahlfächer AAU (INO.002)
(Compulsory elective)
-
INO.203 Übersetzerbau (
2.0h UE / 4.0 ECTS)
- 621.401 Compiler Construction (2.0h UE / 4.0 ECTS) Absolvierung im 2. Semester empfohlen
-
INO.203 Übersetzerbau (
2.0h UE / 4.0 ECTS)
-
Subject: Gebundene Wahlfächer AAU (INO.002)
(Compulsory elective)
- Master's degree programme Informatics
(SKZ: 911, Version: 19W.2)
-
Subject: Vertiefung Informatik (Specialization in Informatics)
(Compulsory subject)
-
1.5 Compiler Construction (
2.0h UE / 4.0 ECTS)
- 621.401 Compiler Construction (2.0h UE / 4.0 ECTS) Absolvierung im 2. Semester empfohlen
-
1.5 Compiler Construction (
2.0h UE / 4.0 ECTS)
-
Subject: Vertiefung Informatik (Specialization in Informatics)
(Compulsory subject)
- Master's degree programme Applied Informatics
(SKZ: 911, Version: 13W.1)
-
Subject: Vertiefung Informatik
(Compulsory subject)
-
Übersetzerbau (
2.0h UE / 4.0 ECTS)
- 621.401 Compiler Construction (2.0h UE / 4.0 ECTS)
-
Übersetzerbau (
2.0h UE / 4.0 ECTS)
-
Subject: Vertiefung Informatik
(Compulsory subject)
Equivalent courses for counting the examination attempts
-
Sommersemester 2024
- 621.401 UE Compiler Construction (2.0h / 4.0ECTS)
-
Sommersemester 2023
- 621.401 UE Compiler Construction (2.0h / 4.0ECTS)
-
Sommersemester 2022
- 621.401 UE Compiler Construction (2.0h / 4.0ECTS)
-
Sommersemester 2020
- 621.401 PR Compiler Construction (2.0h / 4.0ECTS)
-
Sommersemester 2019
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2018
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2017
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2016
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2015
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2014
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2013
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2012
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
-
Sommersemester 2011
- 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)