185.187 Optimierende Übersetzer
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2010W, VU, 3.0h, 4.5EC, wird geblockt abgehalten

Merkmale

  • Semesterwochenstunden: 3.0
  • ECTS: 4.5
  • Typ: VU Vorlesung mit Übung

Ziele der Lehrveranstaltung

Die Studierenden erhalten ein umfassendes Verständnis der theoretischen Grundlagen und praktischen Anwendungen von Programmanalyse und -optimierung im Übersetzerbau. Sie lernen, die Möglichkeiten und Grenzen automatischer Analysen und Optimierungen einzuschätzen und sind im Wissen darum in der Lage, über Anwendungen im Übersetzerbau hinaus, Software so zu schreiben, dass, wo möglich, Entwurfsziele wie Klarheit, Wartbarkeit, Robustheit vor unnötigen Effizienzüberlegungen in den Vordergrund treten.

Inhalt der Lehrveranstaltung

Die Vorlesung vertieft in Theorie und Praxis das Gebiet Programmanalyse und -optimierung, das ein wesentliches Forschungsgebiet im Bereich Programmiersprachen und Übersetzerbau ist. Dabei spannt die Vorlesung den Bogen von den theoretischen Grundlagen bis zur praktischen Anwendung und der automatischen Generierung von Programmanalysen und Optimierungen. Im Übungsteil werden die in der Vorlesung behandelten Themen in theoretischen und praktischen Übungen eigenständig vertieft. Für die praktischen Übungen wird dabei die Static Analysis Tool Integration Engine SATIrE eingesetzt; ein System, das diverse Werkzeuge für die Analyse und Optimierung von objektorientierten Sprachen integriert, darunter den Program Analyzer Generator (PAG). Die Vorlesung behandelt insbesondere folgende Themen und deren Realisierung mithilfe von SATIrE

:

  • Grundlagen und Anwendungen von Programmanalyse und Optimierung
  • Datenflussanalyse (vorwärts, rückwärts, existentiell, universell)
  • Datenflussanalyserahmen (intraprozedural, interprozedural)
  • Maschinenunabhängige Optimierungen, insbesondere syntaktische und semantische Redundanzelimination
  • Zeiger-, Alias- und Geflechtanalysen
  • Analyse und Optimierung objektorientierter Programme
  • Generatoren für Analyse und Optimierung, speziell SATIrE
  • ...

Weitere Informationen

Die Vorbesprechung zur Vorlesung findet am Mittwoch, den 13.10.2010, von 16:15 Uhr bis 17:00 Uhr in der Bibliothek E185.1, Argentinierstr. 8, 4. Stock (Mitte) statt. Die erste Vorlesung findet dann am Mittwoch, den 27.10.2010, von 16:15 bis 17:45 im HS14, Karlsplatz 13, statt.

Vortragende Personen

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Mi.16:00 - 18:0006.10.2010 - 27.01.2011Hörsaal 14 KNOOP
Optimierende Übersetzer - Einzeltermine
TagDatumZeitOrtBeschreibung
Mi.06.10.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.13.10.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.20.10.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.27.10.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.03.11.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.10.11.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.17.11.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.24.11.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.01.12.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.08.12.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.15.12.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.22.12.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.29.12.201016:00 - 18:00Hörsaal 14 KNOOP
Mi.05.01.201116:00 - 18:00Hörsaal 14 KNOOP
Mi.12.01.201116:00 - 18:00Hörsaal 14 KNOOP
Mi.19.01.201116:00 - 18:00Hörsaal 14 KNOOP
Mi.26.01.201116:00 - 18:00Hörsaal 14 KNOOP
LVA wird geblockt abgehalten

Leistungsnachweis

Beurteilung der Beispiele aus der Übung und mündliche Abschlussprüfung über Vorlesungs- und Übungsstoff. Weitere Angaben zum Beurteilungs- und Prüfungsablauf sind auf der homepage der Lehrveranstaltung gegeben.

LVA-Anmeldung

Anmeldemodalitäten

Ort: Vorbesprechung

Curricula

StudienkennzahlVerbindlichkeitSemesterAnm.Bed.Info
066 937 Software Engineering & Internet Computing Gebundenes Wahlfach

Literatur

  • Textbuch zur Vorlesung:
    • Flemming Nielson, Hanne Riis Nielson, Chris Hankin. Principles of Program Analysis. Springer-V., 2. Auflage (452 pages, ISBN 3-540-65410-0), 2005.
  • Weitere Literatur:
    • Keith D. Cooper, Linda Torczon. Engineering a Compiler. Morgan Kaufmann, (801 pages, ISBN 155860698X), 2003.
    • Steven S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann, (856 pages, ISBN 1558603204), 1997.
    • Y. N. Srikant, Priti Shankar. The Compiler Design Handbook: Optimizations & Machine Code Generation. CRC Press, 1st edition, (928 pages, ISBN 084931240X), 2002.

Vorkenntnisse

Die Vorlesung schließt inhaltlich an die Lehrveranstaltung 185.311 Übersetzerbau an und ergänzt die Lehrveranstaltungen 185.274 Weiterführender Übersetzerbau und 185.276 Analyse und Verifikation. Sie empfiehlt sich deshalb inbesondere für Studierende, die im Bereich von Programmiersprachen und Übersetzerbau einen besonderen Schwerpunkt setzen, eine Seminararbeit, ein Praktikum oder ihre Diplomarbeit anfertigen möchten.

Vorausgehende Lehrveranstaltungen

Begleitende Lehrveranstaltungen

Weitere Informationen

Sprache

Deutsch