CS5368 Compilerbau: Spracherweiterung und Bootstrapping

Modulverantwortliche
  • Prof. Dr. Hellwig Geisse
Lehrende
  • Prof. Dr. Hellwig Geisse
Notwendige Voraussetzungen zur Teilnahme

Keine

Empfohlene Voraussetzungen zur Teilnahme

Gute Kenntnisse im Compilerbau und systemnaher Programmierung

Kurzbeschreibung

In einem Projekt wird ein vorhandener Compiler in seiner eigenen Quellsprache re-implementiert. Dazu sind Spracherweiterungen nötig, die auch Auswirkungen auf die Werkzeugkette haben. Alle Teilaufgaben werden durch Gruppen von Teilnehmern bearbeitet, die gemeinsam das Gesamtprojekt realisieren.

Inhalte
  • Konzept des Bootstrappings
  • Analyse der vorhandenen Sprachkonstrukte
  • Erweiterbare Records
  • Modulkonzept, getrennte Übersetzung
  • Syntax und Semantik der neuen Konstrukte
  • Typsicherheit bei getrennter Übersetzung
  • Positionsunabhängiger Code
  • Dynamisches Binden und Laden
  • Koordination Compiler/Assembler/Binder
  • Transkription des vorhandenen Compilers
Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können die Bedeutung des Bootstrappings im Compilerbau beschreiben.
  • Sie können die Voraussetzungen für die Durchführung des Verfahrens benennen und sind in der Lage, evtl. nötige Spracherweiterungen zu spezifizieren, zu implementieren, und ihren Einfluss auf die Werkzeugkette zu berücksichtigen.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden sind in der Lage, den Aufwand für einen Compiler-Bootstrap abzuschätzen.

Sozialkompetenzen

  • Die Studierenden sind in der Lage, eigenverantwortlich Arbeiten im Team durchzuführen.
  • Sie können Aufgaben in Gruppenarbeit gemeinsam konstruktiv lösen und sich gegenseitig unterstützen.

Selbstkompetenzen

  • Die Studierenden können ihren Lernfortschritt reflektieren und ihr Lernverhalten anpassen.
ECTS-Leistungspunkte (CrP)
  • 6 CrP
  • Arbeitsaufwand 180 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 120 Std.
Lehr- und Lernformen
  • 4 SWS
  • Seminaristischer Unterricht 2SWS
  • Praktikum 2SWS
Studiensemester
  • Informatik (M.Sc. 2010)
Dauer
1 Semester
Häufigkeit des Angebots
Nach Bedarf
Unterrichtssprache
Deutsch
Bonuspunkte

Nein

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung : Keine

Prüfungsleistung: Entwicklung in der Informatik

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Literatur, Medien

Rechtliche Hinweise