621.401 (21S) Compiler Construction

Sommersemester 2021

Anmeldefrist abgelaufen.

Erster Termin der LV
03.03.2021 16:00 - 18:00 online Off Campus
... keine weiteren Termine bekannt

Überblick

Bedingt durch die COVID-19-Pandemie können kurzfristige Änderungen bei Lehrveranstaltungen und Prüfungen (z.B. Absage von Präsenz-Lehreveranstaltungen und Umstellung auf Online-Prüfungen) erforderlich sein.

Weitere Informationen zum Lehrbetrieb vor Ort finden Sie unter: https://www.aau.at/corona.
Lehrende/r
LV Nummer Südostverbund INO23001UL
LV-Titel englisch Compiler Construction
LV-Art Übung (prüfungsimmanente LV )
LV-Modell Onlinelehrveranstaltung
Semesterstunde/n 2.0
ECTS-Anrechnungspunkte 4.0
Anmeldungen 23 (30 max.)
Organisationseinheit
Unterrichtssprache Englisch
mögliche Sprache/n der Leistungserbringung Deutsch , Englisch
LV-Beginn 03.03.2021
eLearning zum Moodle-Kurs

Zeit und Ort

Beachten Sie bitte, dass sich aufgrund von COVID-19-Maßnahmen die derzeit angezeigten Termine noch ändern können.
Liste der Termine wird geladen...

LV-Beschreibung

Intendierte Lernergebnisse

Studierende können die Konzepte des Übersetzerbaus in Übungsaufgaben anwenden und einen funktionierenden Compiler erklären und erweitern.

Lehrmethodik inkl. Einsatz von 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.

Inhalt/e

  • Untersuchung und Erweiterung eines funktionierenden Compilers
  • Lexikalische Analyse, endliche Automaten
  • Kontextfreie Grammatiken, Kellerautomaten
  • Syntaktische Analyse (Parsing)
  • Attributgrammatiken
  • Symboltabellen
  • Laufzeitumgebungen
  • Code-Erzeugung

Erwartete Vorkenntnisse

  • Rechnerorganisation (MIPS-Assembler)
  • Theoretische Informatik (Formale Sprachen, Automaten)

Literatur

Aho – Lam – Sethi – Ullman: Compilers, 2nd ed., Pearson, 2006. Deutsche Auflage (2008) in der "Lehrbuchsammlung" der Bibliothek verfügbar.

Intendierte Lernergebnisse

Students can apply the concepts of compiler construction to some exercises,
and explain and extend a working compiler.

Lehrmethodik inkl. Einsatz von 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.

Inhalt/e

  • 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

Erwartete Vorkenntnisse

  • Computer organization - MIPS assembler
  • Theoretical computer science - formal languages, automata

Literatur

Aho – Lam – Sethi – Ullman: Compilers, 2nd ed., Pearson, 2006. German edition (2008) available in "Lehrbuchsammlung" of local library.

Prüfungsinformationen

Im Fall von online durchgeführten Prüfungen sind die Standards zu beachten, die die technischen Geräte der Studierenden erfüllen müssen, um an diesen Prüfungen teilnehmen zu können.

Prüfungsmethode/n

  • Abgabe und Präsentation von Übungsaufgaben
  • Abgabe von Code und Berichten zu einem funktionierenden Compiler
  • Einzelarbeit (keine Gruppenarbeit)

Prüfungsinhalt/e

  • Übungsaufgaben zum Vorlesungsinhalt
  • Bereitgestellte und von Studierenden erweiterte Compiler-Implementierung

Beurteilungskriterien/-maßstäbe

  • Ü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.

Prüfungsmethode/n

  • Submission and presentation of homework exercises.
  • Submission of code and reports related to working compiler.
  • All individual work, no group work.

Prüfungsinhalt/e

  • Exercises related to lecture content.
  • Provided and extended compiler implementation.

Beurteilungskriterien/-maßstäbe

  • 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.

Beurteilungsschema

Note Benotungsschema

Position im Curriculum

  • Diplom-Lehramtsstudium Unterrichtsfach Informatik und Informatikmanagement (SKZ: 884, Version: 04W.7)
    • 2.Abschnitt
      • Fach: Praktische und Technische Informatik (LI 2.2) (Pflichtfach)
        • Übersetzerbau ( 2.0h PR / 3.0 ECTS)
          • 621.401 Compiler Construction (2.0h UE / 4.0 ECTS)
  • Master-Lehramtsstudium Master Unterrichtsfach Informatik (SKZ: 514, Version: 19W.2)
    • Fach: Gebundene Wahlfächer AAU (INO.002) (Wahlfach)
      • INO.203 Übersetzerbau ( 2.0h UE / 4.0 ECTS)
        • 621.401 Compiler Construction (2.0h UE / 4.0 ECTS)
          Absolvierung im 2. Semester empfohlen
  • Masterstudium Informatics (SKZ: 911, Version: 19W.2)
    • Fach: Vertiefung Informatik (Specialization in Informatics) (Pflichtfach)
      • 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
  • Masterstudium Angewandte Informatik (SKZ: 911, Version: 13W.1)
    • Fach: Vertiefung Informatik (Pflichtfach)
      • Übersetzerbau ( 2.0h UE / 4.0 ECTS)
        • 621.401 Compiler Construction (2.0h UE / 4.0 ECTS)

Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung

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)