English
Related papers

Related papers: A Direct-Style Effect Notation for Sequential and …

200 papers

We extend intersection types to a computational $\lambda$-calculus with algebraic operations \`a la Plotkin and Power. We achieve this by considering monadic intersections, whereby computational effects appear not only in the operational…

Programming Languages · Computer Science 2024-01-24 Francesco Gavazzo , Riccardo Treglia , Gabriele Vanoni

Notions of computation can be modelled by monads. Algebraic effects offer a characterization of monads in terms of algebraic operations and equational axioms, where operations are basic programming features, such as reading or updating the…

Programming Languages · Computer Science 2024-05-21 Cristina Matache , Sam Lindley , Sean Moss , Sam Staton , Nicolas Wu , Zhixuan Yang

We present an abstract framework for concurrent processes in which atomic steps have generic side effects, handled according to the principle of monadic encapsulation of effects. Processes in this framework are potentially infinite…

Logic in Computer Science · Computer Science 2011-04-18 Sergey Goncharov , Lutz Schröder

Effect and coeffect tracking integrate many types of compile-time analysis, such as cost, liveness, or dataflow, directly into a language's type system. In this paper, we investigate the addition of effect and coeffect tracking to the type…

Programming Languages · Computer Science 2024-09-04 Cassia Torczon , Emmanuel Suárez Acevedo , Shubh Agrawal , Joey Velez-Ginorio , Stephanie Weirich

This paper proposes a general semantic framework for verifying programs with arbitrary monadic side-effects using Dijkstra monads, which we define as monad-like structures indexed by a specification monad. We prove that any monad morphism…

Programming Languages · Computer Science 2019-06-27 Kenji Maillard , Danel Ahman , Robert Atkey , Guido Martinez , Catalin Hritcu , Exequiel Rivas , Éric Tanter

We introduce the abstract notions of "monadic operational semantics", a small-step semantics where computational effects are modularly modeled by a monad, and "type-and-effect system", including "effect types" whose interpretation lifts…

Programming Languages · Computer Science 2025-04-15 Francesco Dagnino , Paola Giannini , Elena Zucca

We develop the theory of strong and commutative monads in the 2-dimensional setting of bicategories. This provides a framework for the analysis of effects in many recent models which form bicategories and not categories, such as those based…

Logic in Computer Science · Computer Science 2024-06-12 Hugo Paquet , Philip Saville

Probabilistic programming languages, which exist in abundance, are languages that allow users to calculate probability distributions defined by probabilistic programs, by using inference algorithms. However, the underlying inference…

Programming Languages · Computer Science 2026-01-15 Oliver Goldstein , Ohad Kammar

Hybrid computation combines discrete and continuous dynamics in the form of an entangled mixture inherently present both in various natural phenomena, and in applications ranging from control theory to microbiology. The emergent behaviours…

Logic in Computer Science · Computer Science 2019-07-19 Sergey Goncharov , Renato Neves

Our aim here is to illustrate how the benefits of structural corecursion can be found in a broader swath of the programming landscape than previously thought. Beginning from a tutorial on structural corecursion in the total, pure functional…

Programming Languages · Computer Science 2021-03-15 Paul Downen , Zena M. Ariola

The modern theory of functional programming languages uses monads for encoding computational side-effects and side-contexts, beyond bare-bone program logic. Even though quantum computing is intrinsically side-effectful (as in quantum…

Quantum Physics · Physics 2025-10-07 Hisham Sati , Urs Schreiber

Programming benefits from a clear separation between pure, mathematical computation and impure, effectful interaction with the world. Existing approaches to enforce this separation include monads, type-and-effect systems, and capability…

Programming Languages · Computer Science 2025-10-10 Yuyan Bao , Tiark Rompf

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

Programming languages with algebraic effects often track the computations' effects using type-and-effect systems. In this paper, we propose to view an algebraic effect theory of a computation as a variable context; consequently, we propose…

Programming Languages · Computer Science 2021-08-24 Nikita Zyuzin , Aleksandar Nanevski

Dynamic evaluation is a paradigm in computer algebra which was introduced for computing with algebraic numbers. In linear algebra, for instance, dynamic evaluation can be used to apply programs which have been written for matrices with…

Logic in Computer Science · Computer Science 2014-11-27 Jean-Guillaume Dumas , Dominique Duval , Burak Ekici , Damien Pous

We develop a denotational model for probabilistic and concurrent imperative programs, a class of programs with standard control flow via conditionals and while-loops, as well as probabilistic actions and parallel composition. Whereas…

Programming Languages · Computer Science 2025-06-10 Noam Zilberstein , Daniele Gorla , Alexandra Silva

Dependent types provide a lightweight and modular means to integrate programming and formal program verification. In particular, the types of programs written in dependently typed programming languages (Agda, Idris, F*, etc.) can be used to…

Logic in Computer Science · Computer Science 2017-10-10 Danel Ahman

In functional programming, monads are supposed to encapsulate computations, effectfully producing the final result, but keeping to themselves the means of acquiring it. For various reasons, we sometimes want to reveal the internals of a…

Programming Languages · Computer Science 2012-02-15 Maciej Piróg , Jeremy Gibbons

Wadler and Thiemann unified type-and-effect systems with monadic semantics via a syntactic correspondence and soundness results with respect to an operational semantics. They conjecture that a general, "coherent" denotational semantics can…

Programming Languages · Computer Science 2014-01-22 Dominic Orchard , Tomas Petricek , Alan Mycroft

Effectful programs interact in ways that go beyond simple input-output, making compositional reasoning challenging. Existing work has shown that when such programs are ``separate'', i.e., when programs do not interfere with each other, it…

Programming Languages · Computer Science 2023-03-06 Pedro H. Azevedo de Amorim , Justin Hsu