The DOI matches its Crossref record; 2 of the 2 references it cites were found in a registry or an index.
Effect handlers in Haskell, evidently
Open accessAbstract
Algebraic effect handlers offer an alternative to monads to incorporate effects in Haskell. In recent work Xie _et al._ show how to give semantics to effect handlers in terms of plain polymorphic lambda calculus through _evidence translation_. Besides giving precise semantics, this translation also allows for potentially more efficient implementations. Here we present the first implementation of this technique as a library for effect handlers in Haskell. We show how the design naturally leads to a concise effect interface and how evidence translation enables evaluating _tail resumptive_ operations _in-place_. We give detailed benchmark results where our library performs well with respect to other approaches.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
In Koka, the overhead caused by the monadic encoding is reduced by implementing the standard state handler using direct mutable state in the backend.
“In Koka, we further reduce the overhead caused by the monadic encoding by implementing the standard state handler using direct mutable state in the backend [Xie and Leijen 2020].”
From First-class names for effect handlers (2022) · cites this paper as Xie and Leijen 2020
The Abstract describes an effect-handler library for Haskell, while Koka appears in the available passages only in the References (no page given). Searches for Koka, mutable state in the backend, and monadic-encoding overhead found no passage stating the claimed optimization. (LLM, conf=0.72)
Experimental — accuracy not yet measured
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
CONVENT, L., LINDLEY, S., MCBRIDE, C., & MCLAUGHLIN, C. (2020) · Journal of Functional Programming · doi:10.1017/s0956796820000039 · Cited by 39
No value restriction is needed for algebraic effects and handlers
KAMMAR, O., & PRETNAR, M. (2017) · Journal of Functional Programming · doi:10.1017/s0956796816000320 · Cited by 22
Flagged first, then by citations
Research works printed but not linked: 29
- 10.1145/3158096 · DOI · Paper page
- 10.1017/S0956796807006259 · DOI
- 10.1145/2364506.2364522 · DOI
- Ben R. Gaster, and Mark P. Jones. 1996. A Polymorphic Type System for Extensible Records and Variants. NOTTCS-TR-96-3. University of Nottingham.
- 10.1145/2500365.2500590 · DOI
- 10.1145/2804302.2804319 · DOI
- 10.1145/1017472.1017488 · DOI
- 10.1145/2503778.2503791 · DOI
- Oleg Kiselyov, and KC Sivaramakrishnan. Dec. 2017. Ef Directly in OCaml. In ML Workshop 2016. http://kcsrk.info/papers/caml-eff17.pdf. Extended version.
- Daan Leijen. 2005. Extensible Records with Scoped Labels. In Proceedings of the 2005 Symposium on Trends in Functional Programming, 297-312.
- 10.1145/1411204.1411245 · DOI · Paper page
- 10.4204/EPTCS.153.8 · DOI · Paper page
- 10.1145/3009837.3009872 · DOI
- 10.1145/3240719.3241789 · DOI · Paper page
- 10.1145/331960.331977 · DOI
- 10.1145/199448.199528 · DOI
- 10.1007/BF01018827 · DOI
- 10.1017/S0956796806006034 · DOI
- 10.1023/A: · DOI
- 10.2168/LMCS-9(4:23)2013 · DOI
- 10.1145/1411204.1411215 · DOI
- 10.1145/3331545.3342595 · DOI
- 10.1017/S0956796808006758 · DOI
- 10.1007/978-3-319-19797-5_15 · DOI
- 10.1007/978-3-319-19797-5_15 · DOI
- 10.1145/2633357.2633358 · DOI
- 10.1145/3408981 · DOI
- 10.1145/604131.604150 · DOI
- 10.1145/2103786.2103795 · DOI
Cited by
Sorted by citations
Perceus: garbage free reference counting with reuse
Reinking, A., Xie, N., de Moura, L., & Leijen, D. (2021) · Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation · doi:10.1145/3453483.3454032 · Cited by 32
Self-citationFirst-class names for effect handlers
Xie, N., Cong, Y., Ikemori, K., & Leijen, D. (2022) · Proceedings of the ACM on Programming Languages · doi:10.1145/3563289 · Cited by 11
Self-citation
Metadata
- Authors
- Xie, N., & Leijen, D.
- Affiliations
- Microsoft (United States) (US)
- Venue
- Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell
- Publisher
- ACM
- Published
- 2020-08-09
- Pages
- 95-108
- OpenAlex
- W3046307400
- Cited by
- 8
- References
- 2
- Citations by year
- 2025: 4 · 2023: 1 · 2022: 1 · 2021: 2
- FWCI
- 0.38
- Type
- conference paper
- Language
- en
- Open access
- hybrid
- doi.org
- Licence
- Locations
- International Symposium on Haskell (publishedVersion, cc-by-nd)
- Topics
- Physical Sciences › Computer Science › Software › Logic, programming, and type systems
- Physical Sciences › Computer Science › Computer Networks and Communications › Distributed systems and fault tolerance
- Physical Sciences › Computer Science › Hardware and Architecture › Security and Verification in Computing
- Keywords
- evidence translation, polymorphic lambda calculus, library implementation
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review