ICFP 2021
Sun 22 - Sat 28 August 2021

Algebraic effects and handlers have found their way into programming languages. The past decade has seen different designs of calculi with support for effect handlers, as well as different variants of effect handlers developed for specific applications. In this paper, we study the extension of the Effekt language with bidirectional effects. Effekt is unique in its treatment of effect polymorphism, whereas bidirectional effects are useful for expressing bidirectional communication. We present a sound formalization of the extended Effekt language, and demonstrate several practical examples.