Structured Handling of Scoped Effects: Extended Version

01/25/2022
by   Zhixuan Yang, et al.
0

Algebraic effects offer a versatile framework that covers a wide variety of effects. However, the family of operations that delimit scopes are not algebraic and are usually modelled as handlers, thus preventing them from being used freely in conjunction with algebraic operations. Although proposals for scoped operations exist, they are either ad-hoc and unprincipled, or too inconvenient for practical programming. This paper provides the best of both worlds: a theoretically-founded model of scoped effects that is convenient for implementation and reasoning. Our new model is based on an adjunction between a locally finitely presentable category and a category of functorial algebras. Using comparison functors between adjunctions, we show that our new model, an existing indexed model, and a third approach that simulates scoped operations in terms of algebraic ones have equal expressivity for handling scoped operations. We consider our new model to be the sweet spot between ease of implementation and structuredness. Additionally, our approach automatically induces fusion laws of handlers of scoped effects, which are useful for reasoning and optimisation.

READ FULL TEXT

Authors

page 1

page 2

page 3

page 4

10/14/2021

Parallel Algebraic Effect Handlers

Algebraic effects and handlers support composable and structured control...
05/27/2020

Local Algebraic Effect Theories

Algebraic effects are computational effects that can be described with a...
05/18/2021

Parametricity and Semi-Cubical Types

We construct a model of type theory enjoying parametricity from an arbit...
03/07/2022

Handling Higher-Order Effects

Algebraic effect handlers is a programming paradigm where programmers ca...
01/22/2022

Beyond Nonexpansive Operations in Quantitative Algebraic Reasoning

The framework of quantitative equational logic has been successfully app...
05/11/2022

Algebraic Presentation of Semifree Monads

Monads and their composition via distributive laws have many application...
12/31/2018

Eff Directly in OCaml

The language Eff is an OCaml-like language serving as a prototype implem...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.