Workshop-Tage 1997
Workshop 8: Ein Übersetzer-Generator auf Java-Basis
[Einleitung] [Kursvoraussetzungen] [Literatur] [Programm] [Kursziel] [Adressaten] [Referent] [WS9]
Es gibt zahlreiche Gründe für den Einsatz von Übersetzerprogrammen innerhalb von Softwaresystemen. Sie ermöglichen es, unterschiedliche Datenformate aufeinander abzubilden, um bspw. anwendungstypische Eingaben in eine SQL-Datenbankabfrage umzuwandeln. Darüber hinaus sind sie geeignet, (kleine) Fachsprachen zu implementieren und dadurch Teile der Softwareproduktion zu automatisieren.
Der Workshop richtet sich an Teilnehmer, die bislang auf den
Einsatz von Übersetzergeneratoren verzichtet haben, weil sie
ihnen zu aufwendig oder kompliziert erschienen oder einfach
unbekannt waren.
Im Workshop soll zunächst der sprachliche Charakter jeder
Schnittstellen-Implementation herausgearbeitet werden. Es wird
die Bedeutung der formalen Definition für die automatische
Übersetzung gezeigt. Die Verwendung des Depot4-Systems
ermöglicht es, für einfache Aufgaben innerhalb kürzester Zeit
Übersetzer zu erzeugen, ohne dass dafür tiefgreifende
Kenntnisse aus dem Compilerbau erfoderlich wären.
Alle Programme werden als Java-Quellcode erzeugt.
Kursvoraussetzungen
- Programmiererfahrungen mit einer Standardsprache (Pascal, Modula, C, Java,...)
- Wünschenswert, wenn auch nicht unbedingt erforderlich, ist die Kenntnis von formalen Syntax-Beschreibungsmitteln (BNF, EBNF)
- Ebenfalls wünschenswert sind Java-Grundkenntnisse
Literatur
keine spezielle Empfehlung, zur formalen Syntaxdefinition sind
die Einführungskapitel jedes Compilerbau-Lehrbuchs geeignet.
EBNF wird in allen Sprachdefinitionen von N. Wirth (Pascal,
Modula-2, Oberon) erläutert.
Programm
- Syntax und Semantik (Nichtvermeidbares Minimalwissen ueber Grammatiken, EBNF usw.)
- Formale Beschreibung von Übersetzungen
- Der Depot4-Übersetzergenerator
- Möglichkeiten und Grenzen formaler Übesetzungen
- Einsatzbeispiele, spezielle Lösungen
- Erfahrungen aus der Portierung von Depot4 auf Java
- Diskussion der Ergebnisse, Vorschläge
Neben dem Theorieteil beinhaltet der Workshop genügend Zeit für praktische Übungen am Rechner.
Kursziel
Die TeilnehmerInnen erhalten einen Überblick über die
Einsatzmöglichkeiten von Übersetzergeneratoren im allgemeinen
und Depot4 im besonderen. Sie erstellen Übersetzungen für
Beispielanwendungen.
Die TeilnehmerInnen erhalten eine Kopie des Depot4-Systems für
ihre persönliche Verwendung.
Adressaten
Software-EntwicklerInnen, insbesondere anwendungsorientierte
Referent
J. Lampe TU Dresden

