ProjektECCE – Effiziente Übersetzung von Kontrolleffekten

Grunddaten

Akronym:
ECCE
Titel:
Effiziente Übersetzung von Kontrolleffekten
Laufzeit:
01.04.2021 bis 31.03.2024
Abstract / Kurz- beschreibung:
Die Strukturierung des Kontrollflusses hat in der Geschichte des
Programmiersprachendesigns schon immer eine entscheidende Rolle gespielt.
So hat auch das letzte Jahrzehnt hat eine Vielzahl
fortgeschrittenen Kontrollstrukturen hervorgebracht. Beispiele hierfür
sind Async/Await, Generatoren, Coroutinen, und Fibers.
Diese neue
Kontrollstrukturen versprechen Abstraktionen auf einem höheren Level und erlauben
es Programme besser zu strukturieren. Ihre Implementierung ist derzeit jedoch
unzureichend. Sie werden fest in die Sprache integriert
(d.h. sie sind nicht vom Nutzer definierbar), sie lassen sich nicht
komponieren (d.h. Programme, welche verschiedene Abstraktionen nutzen, können
nicht zusammen verwendet werden) oder eine Abstraktion kann nicht
wiederverwendet werden, um eine andere zu implementieren.

Algebraische Effektbehandlung (engl. algebraic effect handlers) erlaubt es uns
den zuvor genannten Einschränkungen entgegenzuwirken. Effektbehandlung baut auf
einem robusten theoretischen Hintergrund auf. Mit einem statischen
Typ- und Effektsystem ausgestattet, begünstigt sie eine modulare Definition von
nutzerdefinierbaren Kontrollstrukturen.
Bis zum heutigen Tage ist die Abstraktion der Effektbehandlung jedoch mit
signifikanten Laufzeitkosten verbunden.

Das Ziel des ECCE Projektes (Efficient Compilation of Control Effects) ist es
diese Kosten zu entfernen und "Kontrollflussabstraktionen ohne Bedauern" zu
ermöglichen. Im Rahmen des Projektes werden neue Optimierungstechniken zur
Übersetzung von Programmen mit Effektbehandlung vor (ahead-of-time) und während (just-in-time)
der Programmlaufzeit erarbeitet. Begleitet werden diese Techniken von einem
neuen, theoretischen Grundgerüst welches erlaubt die Korrektheit der Optimierungen
sicherzustellen. Die Anwendung der neuen Optimierungstechniken wird im Rahmen
von existierenden, praktischen Sprachen erprobt werden.

Effiziente Effektbehandlung wird es Programmierern ermöglichen neue
allgemeine, sowie domänenspezifische Kontrollabstraktionen zu definieren, ohne
mit verschlechterter Laufzeit zu bezahlen.
Schlüsselwörter:
Programming
Control Effects

Beteiligte Mitarbeiter/innen

Leiter/innen

Fachbereich Informatik
Mathematisch-Naturwissenschaftliche Fakultät

Ansprechpartner/innen

Mathematisch-Naturwissenschaftliche Fakultät
Universität Tübingen
Fachbereich Informatik
Mathematisch-Naturwissenschaftliche Fakultät
Wilhelm-Schickard-Institut für Informatik (WSI)
Fachbereich Informatik, Mathematisch-Naturwissenschaftliche Fakultät

Lokale Einrichtungen

Wilhelm-Schickard-Institut für Informatik (WSI)
Fachbereich Informatik
Mathematisch-Naturwissenschaftliche Fakultät

Geldgeber

Bonn, Nordrhein-Westfalen, Deutschland
Hilfe

wird permanent gelöscht. Dies kann nicht rückgängig gemacht werden.