|
|
Beschreibung |
Der Kurs behandelt Techniken und Werkzeuge zur Übersetzung einer (formalen) Quellsprache in eine Zielsprache. Zumindest die Quellsprache ist durch eine geeignete Grammatik definiert. Der klassische Anwendungsfall ist die Übersetzung von einer höheren Programmiersprache in Maschinen- oder Assemblersprache. Insofern vermittelt der Kurs ein grundlegendes Verständnis für die Implementierung von Programmiersprachen. Übersetzungstechniken haben aber viel weitergehende Anwendbarkeit: Andere Quellsprachen können z.B. Dokumentbeschreibungssprachen sein (LaTeX, HTML, ...), Anfragesprachen in Datenbanksystemen, VLSI- Entwurfssprachen usw. oder auch komplex strukturierte Eingabedateien für Anwendungsprogramme. Es gibt mächtige Werkzeuge (Scanner - und Parsergeneratoren auf der Basis attributierter Grammatiken), deren Kenntnis für jeden Informatiker nützlich ist, auch wenn nur wenige klassische Übersetzer (Compiler) implementieren. Voraussetzungen: Programmierung (etwa anhand der Kurse 01612, 01613 oder 01618), Datenstrukturen (01663 oder 01661). Grundbegriffe der Theorie der formalen Sprachen (etwa aus 01654 oder 01655) sind nützlich, werden aber auch in diesem Kurs vermittelt. Für folgende Informatik-Studiengänge vorgesehen: B, D, L, MC (über Katalog B), Z. |
|
|