621.401 (10S) Übersetzerbau

Sommersemester 2010

Anmeldefrist abgelaufen.

Erster Termin der LV
02.03.2010 13:45 - 15:15 HS 10 On Campus
... keine weiteren Termine bekannt

Überblick

Lehrende/r
LV-Titel englisch Compiler Construcion
LV-Art Praktikum (prüfungsimmanente LV )
Semesterstunde/n 2.0
ECTS-Anrechnungspunkte 4.0
Anmeldungen 24 (30 max.)
Organisationseinheit
Unterrichtssprache Englisch
LV-Beginn 01.03.2010
Anmerkungen Die Unterrichtssprache kann mit Einverständnis aller TeilnehmerInnen auf deutsch umgestellt werden.

Zeit und Ort

Liste der Termine wird geladen...

LV-Beschreibung

Lehrmethodik inkl. Einsatz von eLearning-Tools

Angeleitete Durchführung eines Programmierprojekts; Bearbeiten und Präsentieren von Übungsaufgaben.

Inhalt/e

Einführung in die Grundlagen des Übersetzerbaus

Themen

  • Implementierung eines Compilers
  • Lexikalische Analyse, endliche Automaten
  • Kontextfreie Grammatiken, Kellerautomaten
  • Syntaktische Analyse (top-down parsing)
  • Syntaktische Analyse (bottom-up parsing)
  • Attributierte Grammatiken
  • Semantische Analyse
  • Laufzeitumgebung
  • Zwischencodeerzeugung
  • Codeerzeugung

Lehrziel

Die Studierenden sollen: * selbst einen Compiler für eine prozedurale Programmiersprache in Java entwickeln; * die Inhalte der Vorlesung "Übersetzerbau" in Übungsaufgaben bearbeiten.

Erwartete Vorkenntnisse

Gute Java-Kenntnisse Rechnerorganisation, insbesondere Assembler-Programmierung Einführung in die Theoretische Informatik

Literatur

* Aho - Lam - Sethi - Ullmann: Compilers, 2nd edition, Addison-Wesley, 2007. * Grune - Bal - Jacobs - Langendoen: Modern Compiler Design, Wiley, 2000. * Wirth: Compilerbau, 4th edition, Teubner, 1986. * Appel: Modern Compiler Implementation in Java, Cambridge University Press, 1998. * Hopcroft – Motwani – Ullmann: Introduction to Automata Theory, Languages, and Computation, 2nd edition, Addison-Wesley, 2001.

Lehrmethodik inkl. Einsatz von eLearning-Tools

Supervised development of a programming project; presentation of solutions to exercises.

Inhalt/e

An Introduction to Compiler Construction

Themen

  • Implementing a compiler
  • Lexical analysis, finite automata
  • Context-free grammars, push-down automata
  • Syntactical analysis (top-down parsing)
  • Syntactical analysis (bottom-up parsing)
  • Syntax-directed translation, attribute grammars
  • Static correctness checking
  • Run-time environments
  • Intermediate code generation
  • Code generation

Lehrziel

Students should: * develop a compiler for a procedural programming language using Java; * work on exercises referring to the topics presented in the lecture on "Compiler Construction".

Erwartete Vorkenntnisse

Programming in Java Computer organization, in particular assembler programming Introduction to theoretical computer science

Literatur

* Aho - Lam - Sethi - Ullmann: Compilers, 2nd edition, Addison-Wesley, 2007. * Grune - Bal - Jacobs - Langendoen: Modern Compiler Design, Wiley, 2000. * Wirth: Compilerbau, 4th edition, Teubner, 1986. * Appel: Modern Compiler Implementation in Java, Cambridge University Press, 1998. * Hopcroft – Motwani – Ullmann: Introduction to Automata Theory, Languages, and Computation, 2nd edition, Addison-Wesley, 2001.

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.

Beurteilungskriterien/-maßstäbe

* 4 Pflichtabgaben und mündliche Prüfung über den selbstimplementierten Compiler. * Kreuzelliste für Übungsaufgaben zur Vorlesung.

Beurteilungskriterien/-maßstäbe

* 4 mandatory code submissions and an oral exam about the developed compiler. * Check list ("Kreuzelliste") for exercises.

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 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Bachelorstudium Informatik (SKZ: 521, Version: 09W.3)
    • Fach: Übersetzerbau (Wahlfach)
      • Übersetzerbau ( 2.0h PR / 4.0 ECTS)
        • 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Bachelorstudium Informatik (SKZ: 521, Version: 03W.1)
    • Fach: Übersetzerbau (Pflichtfach)
      • Übersetzerbau ( 2.0h PR / 4.0 ECTS)
        • 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Masterstudium Informatik (SKZ: 921, Version: 09W.1)
    • Fach: Übersetzerbau (Wahlfach)
      • Übersetzerbau ( 2.0h PR / 4.0 ECTS)
        • 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Masterstudium Informatik (SKZ: 921, Version: 03W.1)
    • Fach: Übersetzerbau (Wahlfach)
      • Übersetzerbau ( 2.0h PR / 4.0 ECTS)
        • 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Diplomstudium Informatik (SKZ: 880, Version: 02W)
    • 2.Abschnitt
      • Fach: Softwareentwicklung (Pflichtfach)
        • Übersetzerbau ( 2.0h PR / 4.0 ECTS)
          • 621.401 Übersetzerbau (2.0h PR / 4.0 ECTS)
  • Bachelorstudium Informationstechnik (SKZ: 289, Version: 06W.1)
    • Fach: Informatik und Softwareentwicklung (Wahlfach)
      • Modul: Übersetzerbau
        • Kurs (Übersetzerbau) ( 2.0h KU / 3.0 ECTS)
          • 621.401 Übersetzerbau (2.0h PR / 3.0 ECTS)

Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung

Sommersemester 2013
  • 621.402 PR Übersetzerbau (2.0h / 4.0ECTS)
Sommersemester 2010
  • 621.402 PR Übersetzerbau (2.0h / 4.0ECTS)
Sommersemester 2009
  • 621.401 PR Übersetzerbau (2.0h / 4.0ECTS)
  • 621.402 PR Übersetzerbau (2.0h / 4.0ECTS)