English
Related papers

Related papers: Handling polymorphic algebraic effects

200 papers

We give a polymorphic account of the relational algebra. We introduce a formalism of ``type formulas'' specifically tuned for relational algebra expressions, and present an algorithm that computes the ``principal'' type for a given…

Logic in Computer Science · Computer Science 2007-05-23 Jan Van den Bussche , Emmanuel Waller

We show how to smoothly incorporate in the object-oriented paradigm constructs to raise, compose, and handle effects in an arbitrary monad. The underlying pure calculus is meant to be a representative of the last generation of OO languages,…

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

We study the fundamental efficiency of delimited control. Specifically, we show that effect handlers enable an asymptotic improvement in runtime complexity for a certain class of functions. We consider the generic count problem using a pure…

Programming Languages · Computer Science 2020-07-15 Daniel Hillerström , Sam Lindley , John Longley

Type-and-effect systems help the programmer to organize data and computational effects in a program. While for traditional type systems expressive variants with sophisticated inference algorithms have been developed and widely used in…

Programming Languages · Computer Science 2025-10-24 Patrycja Balik , Szymon Jędras , Piotr Polesiuk

Parametricity states that polymorphic functions behave the same regardless of how they are instantiated. When developing polymorphic programs, Wadler's free theorems can serve as free specifications, which can turn otherwise partial…

Programming Languages · Computer Science 2024-07-09 Niek Mulleners , Johan Jeuring , Bastiaan Heeren

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

Soundness and completeness with respect to equational theories for programming languages are fundamental properties in the study of categorical semantics. However, completeness results have not been established for programming languages…

Logic in Computer Science · Computer Science 2026-02-04 Satoshi Kura

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

There exist many techniques for automatically deriving parametric resource (or cost) bounds by analyzing the source code of a program. These techniques work effectively for a large class of programs and language features. However, non-local…

Programming Languages · Computer Science 2026-03-04 Ethan Chu , Yiyang Guo , Jan Hoffmann

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

Effect systems are used to statically reason about the effects an expression may have when evaluated. In the literature, such effects include various behaviours as diverse as memory accesses and exception throwing. Here we present CallE, an…

Programming Languages · Computer Science 2019-09-09 Isaac Oscar Gariano , James Noble , Marco Servetto

The Algebraic lambda-calculus and the Linear-Algebraic lambda-calculus extend the lambda-calculus with the possibility of making arbitrary linear combinations of terms. In this paper we provide a fine-grained, System F-like type system for…

Logic in Computer Science · Computer Science 2015-07-01 Pablo Arrighi , Alejandro Diaz-Caro

Machine learning algorithms use error function minimization to fit a large set of parameters in a preexisting model. However, error minimization eventually leads to a memorization of the training dataset, losing the ability to generalize to…

Machine Learning · Computer Science 2018-03-16 Fernando Martin-Maroto , Gonzalo G. de Polavieja

Capture calculus has recently been proposed as a solution to effect checking, achieved by tracking the captured references of terms in the types. Boxes, along with the box and unbox operations, are a crucial construct in capture calculus,…

Programming Languages · Computer Science 2023-06-13 Yichen Xu , Martin Odersky

Extending the lambda-calculus with a construct for sharing, such as let expressions, enables a special representation of terms: iterated applications are decomposed by introducing sharing points in between any two of them, reducing to the…

Logic in Computer Science · Computer Science 2019-07-16 Beniamino Accattoli , Andrea Condoluci , Giulio Guerrieri , Claudio Sacerdoti Coen

In the quest to give a formal compositional semantics to natural languages, semanticists have started turning their attention to phenomena that have been also considered as parts of pragmatics (e.g., discourse anaphora and presupposition…

Computation and Language · Computer Science 2015-06-19 Jiri Marsik , Maxime Amblard

Geometric Algebra and Calculus are mathematical languages encoding fundamental geometric relations that theories of physics seem to respect. We propose criteria given which statistics of expressions in geometric algebra are computable in…

Quantum Physics · Physics 2020-12-16 Ross N. Greenwood

The Abella interactive theorem prover has proven to be an effective vehicle for reasoning about relational specifications. However, the system has a limitation that arises from the fact that it is based on a simply typed logic:…

Logic in Computer Science · Computer Science 2018-06-21 Gopalan Nadathur , Yuting Wang

We show that any multiple-valued function can be represented by a linear lambda term typed in a second-order polymorphic type system, using two distinct styles. The first is a circuit style, which mimics combinational circuits in switching…

Programming Languages · Computer Science 2026-03-30 Satoshi Matsuoka

We consider the problem of modularizing control flow in a generic abstract interpretation framework. A generic abstract interpretation framework is not truly flexible if it does not allow interpreting with different path- and…

Programming Languages · Computer Science 2026-02-19 Cade Lueker , Andrew Fox , Bor-Yuh Evan Chang