International Conference on Functional Programming 2017

On the Expressive Power of User-Defined Effects: Effect Handlers, Monadic Reflection, Delimited Control


Listen Later

Ohad Kammar, University of Oxford, UK, gives the second presentation in the fourth panel, Effects, in the ICFP 2017 conference. Co-written by Yannick Forster (Saarland University, Germany and University of Cambridge, UK), Sam Lindley (University of Edinburgh).
We compare the expressive power of three programming abstractions for user-defined computational effects: Bauer and Pretnar's effect handlers, Filinski's monadic reflection, and delimited control without answer-type-modification. This comparison allows a precise discussion about the relative expressiveness of each programming abstraction. It also demonstrates the sensitivity of the relative expressiveness of user-defined effects to seemingly orthogonal language features.
We present three calculi, one per abstraction, extending Levy's call-by-push-value. For each calculus, we present syntax, operational semantics, a natural type-and-effect system, and, for effect handlers and monadic reflection, a set-theoretic denotational semantics. We establish their basic meta-theoretic properties: safety, termination, and, where applicable, soundness and adequacy. Using Felleisen's notion of a macro translation, we show that these abstractions can macro-express each other, and show which translations preserve typeability. We use the adequate finitary set-theoretic denotational semantics for the monadic calculus to show that effect handlers cannot be macro-expressed while preserving typeability either by monadic reflection or by delimited control. We supplement our development with a mechanised Abella formalisation.
...more
View all episodesView all episodes
Download on the App Store

International Conference on Functional Programming 2017By Oxford University


More shows like International Conference on Functional Programming 2017

View all
Philosophy for Beginners by Oxford University

Philosophy for Beginners

330 Listeners

Approaching Shakespeare by Oxford University

Approaching Shakespeare

334 Listeners

General Philosophy by Oxford University

General Philosophy

71 Listeners

Aesthetics and Philosophy of Art lectures by Oxford University

Aesthetics and Philosophy of Art lectures

77 Listeners

Theoretical Physics - From Outer Space to Plasma by Oxford University

Theoretical Physics - From Outer Space to Plasma

57 Listeners

Critical Reasoning: A Romp Through the Foothills of Logic by Oxford University

Critical Reasoning: A Romp Through the Foothills of Logic

39 Listeners

The Secrets of Mathematics by Oxford University

The Secrets of Mathematics

41 Listeners

Critical Reasoning for Beginners by Oxford University

Critical Reasoning for Beginners

32 Listeners

Literature and Form by Oxford University

Literature and Form

18 Listeners

CortexCast - A Neuroscience Podcast by Oxford University

CortexCast - A Neuroscience Podcast

4 Listeners