2018
DOI: 10.1007/978-3-030-02768-1_22
|View full text |Cite
|
Sign up to set email alerts
|

Shallow Effect Handlers

Abstract: Plotkin and Pretnar's effect handlers offer a versatile abstraction for modular programming with user-defined effects. Traditional deep handlers are defined by folds over computation trees. In this paper we study shallow handlers, defined instead by case splits over computation trees. We show that deep and shallow handlers can simulate one another up to specific notions of administrative reduction. We present the first formal accounts of an abstract machine for shallow handlers and a Continuation Passing Style… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
22
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
5
3

Relationship

3
5

Authors

Journals

citations
Cited by 30 publications
(22 citation statements)
references
References 22 publications
0
22
0
Order By: Relevance
“…Relation to Prior Publications This paper combines and streamlines the main results of three previously published papers Hillerström et al, 2017;Hillerström & Lindley, 2018). We have improved the CPS translations described by Hillerström et al (2017) and Hillerström & Lindley (2018) to remove all administrative reductions, and fixed a minor bug in the implementation of shallow handlers (Section 5). The abstract machine described by has been extended to also implement shallow handlers.…”
Section: Introductionmentioning
confidence: 74%
See 2 more Smart Citations
“…Relation to Prior Publications This paper combines and streamlines the main results of three previously published papers Hillerström et al, 2017;Hillerström & Lindley, 2018). We have improved the CPS translations described by Hillerström et al (2017) and Hillerström & Lindley (2018) to remove all administrative reductions, and fixed a minor bug in the implementation of shallow handlers (Section 5). The abstract machine described by has been extended to also implement shallow handlers.…”
Section: Introductionmentioning
confidence: 74%
“…In this section, we present λ † , a Church-style row-polymorphic call-by-value calculus with effect handlers (Hillerström & Lindley, 2018). The calculus captures the essence of the effect handlers as realised by the intermediate representation of Links.…”
Section: Handler Calculusmentioning
confidence: 99%
See 1 more Smart Citation
“…Second, shallow handlers do not resume under their own handler and as a result generally resume under a different handler context than they captured. Fortunately, any program with shallow handler can be expressed with deep handlers as well [Hillerström and Lindley 2018;Kammar et al 2013] and thus avoid the unscoped resumptions. Finally, Kiselyov et al [2006] show an example of code migration that resumes locally captured continuations on another host, possibly under different handlers.…”
Section: Expressivenessmentioning
confidence: 99%
“…As witnessed by the work of Hillerström and Lindley [2018] the machine structures are readily realisable using standard persistent functional data structures. Pure continuations on the base machine and generalised continuations on the handler machine can be implemented using linked lists with a time complexity of O(1) for the extension operation (_ :: _).…”
Section: Realisability and Asymptotic Complexitymentioning
confidence: 99%