English
Related papers

Related papers: Handling Higher-Order Effects

200 papers

Algebraic effects & handlers are a modular approach for modeling side-effects in functional programming. Their syntax is defined in terms of a signature of effectful operations, encoded as a functor, that are plugged into the free monad;…

Programming Languages · Computer Science 2023-02-06 Birthe van den Berg , Tom Schrijvers

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…

Programming Languages · Computer Science 2022-01-26 Zhixuan Yang , Marco Paviotti , Nicolas Wu , Birthe van den Berg , Tom Schrijvers

Effect handlers are a powerful abstraction for defining, customising, and composing computational effects. Statically ensuring that all effect operations are handled requires some form of effect system, but using a traditional effect system…

Programming Languages · Computer Science 2025-03-20 Wenhao Tang , Leo White , Stephen Dolan , Daniel Hillerström , Sam Lindley , Anton Lorenzen

Eff is a programming language based on the algebraic approach to computational effects, in which effects are viewed as algebraic operations and effect handlers as homomorphisms from free algebras. Eff supports first-class effects and…

Programming Languages · Computer Science 2015-07-17 Andrej Bauer , Matija Pretnar

Algebraic effects & handlers have become a standard approach for side-effects in functional programming. Their modular composition with other effects and clean separation of syntax and semantics make them attractive to a wide audience.…

Programming Languages · Computer Science 2024-11-27 Roger Bosman , Birthe van den Berg , Wenhao Tang , Tom Schrijvers

We present a complete polymorphic effect inference algorithm for an ML-style language with handlers of not only exceptions, but of any other algebraic effect such as input & output, mutable references and many others. Our main aim is to…

Programming Languages · Computer Science 2015-07-01 Matija Pretnar

Algebraic effects and handlers support composable and structured control-flow abstraction. However, existing designs of algebraic effects often require effects to be executed sequentially. This paper studies parallel algebraic effect…

Programming Languages · Computer Science 2021-10-15 Ningning Xie , Daniel D. Johnson , Dougal Maclaurin , Adam Paszke

Pressed by the difficulty of writing asynchronous, event-driven code, mainstream languages have recently been building in support for a variety of advanced control-flow features. Meanwhile, experimental language designs have suggested…

Programming Languages · Computer Science 2020-10-20 Yizhou Zhang , Guido Salvaneschi , Andrew C. Myers

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…

Programming Languages · Computer Science 2024-09-25 Danel Ahman , Matija Pretnar

Algebraic effects and handlers are a powerful abstraction mechanism to represent and implement control effects. In this work, we study their extension with parametric polymorphism that allows abstracting not only expressions but also…

Programming Languages · Computer Science 2020-01-16 Taro Sekiyama , Atsushi Igarashi

This note recapitulates and expands the contents of a tutorial on the mathematical theory of algebraic effects and handlers which I gave at the Dagstuhl seminar 18172 "Algebraic effect handlers go mainstream". It is targeted roughly at the…

Logic in Computer Science · Computer Science 2019-03-13 Andrej Bauer

Algebraic effects are computational effects that can be described with a set of basic operations and equations between them. As many interesting effect handlers do not respect these equations, most approaches assume a trivial theory,…

Logic in Computer Science · Computer Science 2020-05-29 Žiga Lukšič , Matija Pretnar

Inference algorithms for probabilistic programming are complex imperative programs with many moving parts. Efficient inference often requires customising an algorithm to a particular probabilistic model or problem, sometimes called…

Programming Languages · Computer Science 2024-12-24 Minh Nguyen , Roly Perera , Meng Wang , Steven Ramsay

Recent work has provided delimited control for Prolog to dynamically manipulate the program control-flow, and to implement a wide range of control-flow and dataflow effects on top of. Unfortunately, delimited control is a rather primitive…

Programming Languages · Computer Science 2016-08-03 Amr Hany Saleh , Tom Schrijvers

Model-checking is one of the most powerful techniques for verifying systems and programs, which since the pioneering results by Knapik et al., Ong, and Kobayashi, is known to be applicable to functional programs with higher-order types…

Logic in Computer Science · Computer Science 2023-09-01 Ugo Dal Lago , Alexis Ghyselen

We study the algebraic effects and handlers as a way to support decision-making abstractions in functional programs, whereas a user can ask a learning algorithm to resolve choices without implementing the underlying selection mechanism, and…

Programming Languages · Computer Science 2022-03-30 Ugo Dal Lago , Francesco Gavazzo , Alexis Ghyselen

This paper studies the design of programming languages with handlers of higher-order effectful operations -- effectful operations that may take in computations as arguments or return computations as output. We present and analyse a core…

Programming Languages · Computer Science 2025-11-11 Zhixuan Yang , Nicolas Wu

Effect handlers allow programmers to model and compose computational effects modularly. Effect systems statically guarantee that all effects are handled. Several recent practical effect systems are based on either row polymorphism or…

Programming Languages · Computer Science 2025-12-16 Wenhao Tang , Sam Lindley

Sequential effect systems are a class of effect system that exploits information about program order, rather than discarding it as traditional commutative effect systems do. This extra expressive power allows effect systems to reason about…

Programming Languages · Computer Science 2020-05-18 Colin S. Gordon

Algebraic effects and handlers are a powerful abstraction to build non-local control-flow mechanisms such as resumable exceptions, lightweight threads, co-routines, generators, and asynchronous I/O. All of such features have very evolved…

Logic in Computer Science · Computer Science 2023-02-08 Tiago Soares , Mário Pereira
‹ Prev 1 2 3 10 Next ›