Informatik Kolloquium, Universität Kaiserslautern, 17. Feb. 1997

Talk on a Functional WAM (in German)

Compilation von funktionalen und logischen Sprachen

Harold Boley

DFKI Kaiserslautern

Zusammenfassung

Die Effizienz funktionaler und logischer Programmiersprachen ist durch neuere Compilationstechniken erheblich verbesserbar. Grundsätzliche Techniken werden hier durch Modifikationen Warrens Abstrakter Maschine (WAM) einheitlich betrachtet. Zunächst behandeln wir eine deterministische WAM ohne logische Variablen als eine einfache funktionale Maschine, die ein temporäres Register zur (geschachtelten) Wertrückgabe nutzt. Diese wird dann um logische Anfragevariablen und non-deterministische Suche erweitert. Durch Einschränkung auf charakteristische Funktionen erhalten wir schließlich eine logische Maschine. Diese funktionale Rekonstruktion der WAM liefert gleichzeitig eine Zielmaschine für die Compilation integriert funktional-logischer Sprachen. Die implementierten Erweiterungen unseres portablen Compilersystems, etwa Operationen höherer Ordnung, kommen somit stets beiden Sprachparadigmen zugute.



Postscript-Folien (in Farbe)

hier mit (implizitem) gunzip aus *.ps.gz
hier (langsamer, weil) direkt als *.ps




For details on the source language see: RELFUN