HOME | ENGLISH | IMPRESSUM | KIT

Studienarbeit (abgeschlossen): Übersetzer von Java nach Jinja

Am Lehrstuhl wurden für die Verifikation von Programmanalysen formale Semantiken für Java und C++ entwickelt, mit denen auch Programme ausgeführt werden können. Diese können jedoch keinen echten Quellcode verarbeiten, sondern brauchen bereits den abstrakten Syntaxbaum des Programms. Für C++-Programme gibt es bereits ein entsprechendes Konvertierungstool als Eclipse-Plugin. Für Java fehlt noch ein solcher Compiler.

Aufgabe:

Ziel der Studienarbeit ist es, ein Konvertierungstool von Java Source Code in den abstrakten Syntaxbaum von Jinja zu erstellen. Dabei können wesentliche Teile des (in Java geschriebenen) Tools für C++-Programme wiederverwendet werden. Neben der reinen Syntaxanalyse muss auch syntaktischer Zucker durch die in Jinja vorhandenen Sprachkonstrukte ersetzt werden. Dazu gehört beispielsweise:
  • for durch while-Schleifen ersetzen
  • Überladene Methoden auflösen
  • Arithmetische Operatoren expandieren (i++ wird zu i=i+1)
  • Default-Konstruktoren generieren
  • Initialisierungscode für Felder in die Konstruktoren verschieben

Voraussetzungen

  • Java-Programmierkenntnisse
  • Compilerbau I
  • Eclipse-Programmierkenntnisse sind von Vorteil


Veröffentlichungen

Veröffentlichung
Entwicklung eines Übersetzers von Java nach Jinja

Betreuer

Ehemalige Mitarbeiter
Dr. rer. nat. Andreas Lochbihler

Studenten

Ehemalige Studenten
Jonas Thedering