English
Related papers

Related papers: An effectful object calculus

200 papers

Monads govern computational side-effects in programming semantics. They can be combined in a ''bottom-up'' way to handle several instances of such effects. Indexed monads and graded monads do this in a modular way. Here, instead, we equip…

Logic in Computer Science · Computer Science 2021-08-05 Carmen Constantin , Nuiok Dicaire , Chris Heunen

A new categorical framework is provided for dealing with multiple arguments in a programming language with effects, for example in a language with imperative features. Like related frameworks (Monads, Arrows, Freyd categories), we…

Category Theory · Mathematics 2007-07-11 Jean-Guillaume Dumas , Dominique Duval , Jean-Claude Reynaud

We show that explicit pragmatic inference aids in correctly generating and following natural language instructions for complex, sequential tasks. Our pragmatics-enabled models reason about why speakers produce certain instructions, and…

Computation and Language · Computer Science 2018-05-30 Daniel Fried , Jacob Andreas , Dan Klein

The $\lambda$-superposition calculus is a successful approach to proving higher-order formulas. However, some parts of the calculus are extremely explosive, notably due to the higher-order unifier enumeration and the functional…

Logic in Computer Science · Computer Science 2025-10-22 Alexander Bentkamp , Jasmin Blanchette , Matthias Hetzenberger , Uwe Waldmann

Monads in category theory are algebraic structures that can be used to model computational effects in programming languages. We show how the notion of "centre", and more generally "centrality", i.e. the property for an effect to commute…

Logic in Computer Science · Computer Science 2025-10-31 TItouan Carette , Louis Lemonnier , Vladimir Zamdzhiev

Type systems usually characterize the shape of values but not their free variables. However, many desirable safety properties could be guaranteed if one knew the free variables captured by values. We describe CCsubBox, a calculus where such…

Programming Languages · Computer Science 2022-07-25 Martin Odersky , Aleksander Boruch-Gruszecki , Edward Lee , Jonathan Brachthäuser , Ondřej Lhoták

Capabilities (whether object or reference capabilities) are fundamentally tools to restrict effects. Thus static capabilities (object or reference) and effect systems take different technical machinery to the same core problem of statically…

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

Recent advances in programming languages study and design have established a standard way of grounding computational systems representation in category theory. These formal results led to a better understanding of issues of control and…

Artificial Intelligence · Computer Science 2007-05-23 Jean-Marie Chauvet

Strong monads are important for several applications, in particular, in the denotational semantics of effectful languages, where strength is needed to sequence computations that have free variables. Strength is non-trivial: it can be…

Logic in Computer Science · Computer Science 2022-07-05 Dylan McDermott , Tarmo Uustalu

Realizability interprets propositions as specifications for computational entities in programming languages. Specifically, syntactic realizability is a powerful machinery that handles realizability as a syntactic translation of propositions…

Logic in Computer Science · Computer Science 2025-06-12 Liron Cohen , Ariel Grunfeld , Dominik Kirst , Étienne Miquey

We present a gradually typed language, GrEff, with effects and handlers that supports migration from unchecked to checked effect typing. This serves as a simple model of the integration of an effect typing discipline with an existing…

Programming Languages · Computer Science 2023-04-06 Max S. New , Eric Giovannini , Daniel R. Licata

This paper presents equational-based logics for proving first order properties of programming languages involving effects. We propose two dual inference system patterns that can be instanciated with monads or comonads in order to be used…

Logic in Computer Science · Computer Science 2013-10-15 Jean-Guillaume Dumas , Dominique Duval , Jean-Claude Reynaud

We introduce a functional calculus with simple syntax and operational semantics in which the calculi introduced so far in the Curry-Howard correspondence for Classical Logic can be faithfully encoded. Our calculus enjoys confluence without…

Logic in Computer Science · Computer Science 2013-04-01 Alberto Carraro , Thomas Ehrhard , Antonino Salibra

Type systems usually characterize the shape of values but not their free variables. However, there are many desirable safety properties one could guarantee if one could track how references can escape. For example, one may implement…

Programming Languages · Computer Science 2021-05-26 Aleksander Boruch-Gruszecki , Jonathan Immanuel Brachthäuser , Edward Lee , Ondřej Lhoták , Martin Odersky

In semantics and in programming practice, algebraic concepts such as monads or, essentially equivalently, (large) Lawvere theories are a well-established tool for modelling generic side-effects. An important issue in this context are…

Logic in Computer Science · Computer Science 2015-03-17 Sergey Goncharov , Lutz Schröder

Most type systems that support polymorphic functions are based on a version of System-F. We argue that this limits useful programming paradigms for languages with lazy evaluation. We motivate an extension of System-F alleviating this…

Programming Languages · Computer Science 2016-12-15 S. Doaitse Swierstra , Marcos Viera , Atze Dijkstra

We present an imperative object calculus where types are annotated with qualifiers for aliasing and mutation control. There are two key novelties with respect to similar proposals. First, the type system is very expressive. Notably, it…

Programming Languages · Computer Science 2018-07-20 Paola Giannini , Marco Servetto , Elena Zucca , James Cone

Scala's type system unifies ML modules, object-oriented, and functional programming. The Dependent Object Types (DOT) family of calculi has been proposed as a new foundation for Scala and similar languages. Unfortunately, it is not clear…

Programming Languages · Computer Science 2016-02-08 Tiark Rompf , Nada Amin

Dependent Object Types (DOT) is intended to be a core calculus for modelling Scala. Its distinguishing feature is abstract type members, fields in objects that hold types rather than values. Proving soundness of DOT has been surprisingly…

Programming Languages · Computer Science 2017-06-14 Marianna Rapoport , Ifaz Kabir , Paul He , Ondřej Lhoták

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
‹ Prev 1 3 4 5 6 7 10 Next ›