Project Details
Projekt Print View

Efficient Compilation of Control-Effects

Subject Area Software Engineering and Programming Languages
Term since 2021
Project identifier Deutsche Forschungsgemeinschaft (DFG) - Project number 448316946
 
The history of programming language design and implementation is to a significant degree the history of control structures. The last decade has seen a new proliferation of advanced control structures, such as async/wait, generators, coroutines, or fibers. These new control structures promise improved program structure (such as the avoidance of "callback hell") and generally a higher level of abstraction. However, the way such control structures are implemented today is highly unsatisfactory. They are often hard-coded into a language, (i.e., they are not user-definable), they are not composable (i.e., programs using different abstractions cannot be combined in one project), or implementations for one control abstraction cannot be reused to implement similar other control abstractions.To resolve the aforementioned limitations, we embrace effect handlers as a high-level control abstraction. Backed by a strong theoretical background and a static type- and effect system, effect handlers encourage a modular definition of control abstractions as user-defineable libraries and naturally allow users to compose these libraries in one program. As of today, the abstraction of effect handlers comes with a cost in performance.The goal of the ECCE project (Efficient Compilation of Control Effects) is to remove these costs and provide "control-flow abstraction without regret". Specifically, we aim to establish a research programme to achieve novel compile-time and just-in-time optimizations for effect handlers, accompanied by both a theoretical framework to reason about correctness and costs as well as implementations for realistic languages. Efficient effect handlers will enable programmers to develop many general purpose, as well as domain specific control-flow constructs without sacrificing performance.
DFG Programme Research Grants
 
 

Additional Information

Textvergrößerung und Kontrastanpassung