Universität Bremen - Projekttag 2007


ARTE-FAKT Logo

Im Projekt Arte-Fakt wurde basierend auf dem Bauhaus-Projekt die Infrastruktur für zum Teil sprachunabhängige Transformationen auf Quellcodeebene (Refactorings) entwickelt unter besonderer Beachtung der Präprozessorproblematik in C und C++.
Für die Durchführung eines Refactorings muss der zu transformierende Quellcode zunächst in die Bauhaus-interne Programmrepräsentation IML (InterMediate Language) überführt werden. Die IML ist ein abstrakter Syntaxbaum, in dem in unterschiedlichen Programmiersprachen geschriebener Code als vereinheitlichte Zwischendarstellung abgebildet wird. Die für die Überführung aus dem Quelltext in die IML benötigte Funktionalität war durch mehrere in das Bauhaus-Projekt integrierte Tools (Frontends) bereits gegeben. Die eigentlichen Refactorings wurden dann als eine Manipulation der IML unter Berücksichtigung der spezifischen Vor- und Nachbedingungen umgesetzt. Hierbei durften möglichst wenige Informationen über den Ursprungscode verloren gehen, da diese unverzichtbar für ein quelltextnahes Unparsen sind, d.h. für die Zurückführung der transformierten IML in ihre entsprechende Textrepräsentation.
Das Verstehen und Anpassen bestehender Tools sowie die Integration der selbst konzipierten und umgesetzten Lösungen in das Bauhaus-Projekt bildeten weitere Schwerpunkte.

Produktbeschreibung

Durch Arte-Fakt wurde das Bauhaus-Projekt um eine erste Transformationskomponente auf Quellcodeebene bestehend aus einem Refactoring-Modul und einem Unparse-Modul sowie um Analysen basierend auf Präprozessor-Informationen erweitert. Für die entwickelten Tools wurden textuelle Benutzungsschnittstellen geschrieben, die wiederum in ein bereits bestehendes Tool mit graphischer Oberfläche integriert wurden.

Für weitere Informationen siehe: ARTE-FAKT Homepage