Der am Lehrstuhl entwickelte X10-Compiler unterstützt momentan nur eine Übersetzungseinheit. Insbesondere bedeutet das, dass die Standardbibliothek bei jedem Compilerlauf neu übersetzt werden muss. Dies ist insbesondere für kleine Programme störend, da sich die Übersetzungszeit stark erhöht.
Weiterhin werden generische Typen und Methoden vom X10-Compiler (wie z.B. auch in C++) bei jeder Instantiierung spezialisiert. Da nicht bekannt ist, welche Spezialisierungen bereits existieren, werden bei mehreren Übersetzungseinheiten oft mehrere identische Spezialisierungen erzeugt, von denen anschließend nur eine Kopie behalten wird.
Aufgabe:
- Einarbeitung in den X10-Compiler
- Erweiterung des X10-Compilers um Unterstützung für modulare Kompilierung
- Evaluation von Techniken zur Vermeidung unnötiger Instantiierungen generischer Typen und Methoden
- Optional: Umsetzung weiterer Ideen zur Beschleunigung des Kompilierungsprozesses
Voraussetzungen
- Interesse am Compilerbau
- Programmierkenntnisse in Java und C
- Erfahrung im Umgang mit größeren Softwareprojekten vorteilhaft
Schlüsselworte
X10, Compiler, modulare Übersetzung
Veröffentlichungen
Betreuer
Studenten