Jonathan Brachthauser
Efficient Programming Based on Effect Handler
In this talk, we will explore computational effects, the importance of reasoning about them, and the role of effect systems and control effects in programming language design. Effect systems enhance types with additional information about potential side effects, helping programmers develop safe and reliable software. We will discuss practical developments in effect systems, focusing on minimizing manual annotations and improving usability. Control effects, such as async/await, are vital for building efficient and maintainable software. We will examine effect handlers, a particular form of control effects that enable the modular and type-safe expression and composition of many other control effects, such as async/await or generators, as user-definable libraries. The talk will introduce various notions of effects, highlight the role of effects and handlers in programming, and discuss current challenges and opportunities. Drawing upon insights from the Effekt language, we aim to balance safety, fine-grained control, and usability in modern software development.
back to overview