Parallel Algebraic Effect Handlers
Abstract
Algebraic effects and handlers support composable and structured control-flow abstraction. However, existing designs of algebraic effects often require effects to be executed sequentially. This paper studies parallel algebraic effect handlers. In particular, we formalize {\lambda}p, an untyped lambda calculus which models two key features, effect handlers and parallelizable computations, the latter of which takes the form of a for expression as inspired by the Dex programming language. We present various interesting examples expressible in our calculus, and provide a Haskell implementation. We hope this paper provides a basis for future designs and implementations of parallel algebraic effect handlers.
Keywords
Cite
@article{arxiv.2110.07493,
title = {Parallel Algebraic Effect Handlers},
author = {Ningning Xie and Daniel D. Johnson and Dougal Maclaurin and Adam Paszke},
journal= {arXiv preprint arXiv:2110.07493},
year = {2021}
}
Comments
Short paper submitted to the ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (PEPM) 2022