Implementation funktionaler Programmiersprachen durch Quelltexttransformation [article]

Dragan Macos, Humboldt-Universität Zu Berlin, Humboldt-Universität Zu Berlin
2017
Die Dissertation liefert einen Beitrag zur Entwicklung von Compilern funktionaler Sprachen zur Erzeugung von Zielcode in einer höheren prozeduralen Programmiersprache. In der Dissertation werden mehrere Implementationstechniken funktionaler Sprachen analysiert, wobei für jede Technik ein Verfahren zur Realisierung eines auf der Übersetzung in eine prozedurale Sprache basierenden Compilers angegeben wird. Durch die verschiedenen Implementationsverfahren, die in der Arbeit analysiert bzw.
more » ... t wurden, sind die beiden großen Klassen funktionaler Sprachen abgedeckt worden: strikte und nicht-strikte funktionale Programmiersprachen. Die Dissertation kann in drei größere Teile gegliedert werden, die sich mit folgenden Bereichen beschäftigen: Direkte übersetzungen funktionaler in prozedurale Programmiersprachen Übersetzung des Codes der abstrakten SECD-Maschine in eine prozedurale Sprache Erzeugung des Zielcodes in einer prozeduralen Programmiersprache bei Graph-Reduktion-basierten Implementationstechniken. Im ersten Teil, dem Schwerpunkt der Arbeit, wird eine über existierende Ansätze hinausgehende Transformation einer einfachen strikten funktionalen Programmiersprache (erweiterter Lambda-Kalkül) in den Code einer prozeduralen Zielsprache eingeführt und durch ein formales System von Transformationsregeln beschrieben. Die Transformation zeichnet sich durch Transparenz und Einfachheit (Erzeugung minimalen Codes) aus. Im zweiten und dritten Teil werden die aus der Literatur bekannten Implementationstechniken modifiziert bzw. optimiert, um Zielprogramme in einer höheren prozeduralen Programmiersprache erzeugen zu können.
doi:10.18452/14353 fatcat:s23es5oblna2jadmesvw3urslm