Eberhard Karls Universität, Tübingen      

Wilhelm-Schickard-Institut


viewable with any
browser
     

Programmiersprachen und Übersetzer

Partielle Auswertung

Partielle Auswertung ist eine automatische Programmtransformationstechnik basierend auf aggressiver Konstantenpropagierung. Aus einem Programm, dessen Eingabe teilweise zur Übersetzungszeit bekannt ist, generiert der partielle Auswerter eine spezialisierte Version des Programms, die nur noch den Rest der Eingabe akzeptiert. Die spezialisierte Version, Residualprogramm genannt, angewendet auf den Rest der Eingabe, produziert das gleiche Resultat wie das ursprüngliche Programm, angewendet auf die volle Eingabe.

Partielle Auswertung kann interpretativen Overhead bei der Programmausführung entfernen und so substantielle Geschwindigkeitsgewinne erzielen. Eine besonders interessante Anwendung ist die Generierung von Compilern aus Interpretern durch Selbstanwendung, also die Anwendung eines partiellen Auswerters auf sich selbst.

Wir haben uns mit verschiedenen Aspekten der partiellen Auswertung beschäftigt, darunter:

  • Implementation von partiellen Auswertern
  • automatische Generierung von Programmtransformatoren
  • automatische Erzeugung von optimierenden Compilern
  • Parsergenerierung
  • Bindungszeitanalyse
  • Spezialisierung von ML-Programmen.


Adresse

Prof. Dr. Herbert Klaeren
Universität Tübingen
Wilhelm-Schickard-Institut für Informatik
Sand 13
D-72076 Tübingen
Germany
Fon:
+49 7071 29-78955
Fax:
+49 7071 29-5082

Prof. Herbert Klaeren Anbieterkennung
Last modified: Wed Nov 1 22:37:46 MET 2006