Papers
Topics
Authors
Recent
Search
2000 character limit reached

Asynchronous Effects

Published 4 Mar 2020 in cs.PL | (2003.02110v3)

Abstract: We explore asynchronous programming with algebraic effects. We complement their conventional synchronous treatment by showing how to naturally also accommodate asynchrony within them, namely, by decoupling the execution of operation calls into signalling that an operation's implementation needs to be executed, and interrupting a running computation with the operation's result, to which the computation can react by installing interrupt handlers. We formalise these ideas in a small core calculus, called $\lambda_{\text{ae}}$. We demonstrate the flexibility of $\lambda_{\text{ae}}$ using examples ranging from a multi-party web application, to preemptive multi-threading, to remote function calls, to a parallel variant of runners of algebraic effects. In addition, the paper is accompanied by a formalisation of $\lambda_{\text{ae}}$'s type safety proofs in Agda, and a prototype implementation of $\lambda_{\text{ae}}$ in OCaml.

Authors (2)
Citations (8)

Summary

No one has generated a summary of this paper yet.

Paper to Video (Beta)

No one has generated a video about this paper yet.

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.