English
Related papers

Related papers: Tracking Captured Variables in Types

200 papers

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

We introduce a type and effect system, for an imperative object calculus, which infers "sharing" possibly introduced by the evaluation of an expression, represented as an equivalence relation among its free variables. This direct…

Programming Languages · Computer Science 2018-08-03 Paola Giannini , Tim Richter , Marco Servetto , Elena Zucca

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

Type systems hide data that is captured by function closures in function types. In most cases this is a beneficial design that favors simplicity and compositionality. However, some applications require explicit information about the data…

Programming Languages · Computer Science 2013-12-03 Gabriel Scherer , Jan Hoffmann

In type-and-coeffect systems, contexts are enriched by coeffects modeling how they are actually used, typically through annotations on single variables. Coeffects are computed bottom-up, combining, for each term, the coeffects of its…

Programming Languages · Computer Science 2022-09-16 Riccardo Bianchini , Francesco Dagnino , Paola Giannini , Elena Zucca , Marco Servetto

AI agents that interact with the real world through tool calls pose fundamental safety challenges: agents might leak private information, cause unintended side effects, or be manipulated through prompt injection. To address these…

Artificial Intelligence · Computer Science 2026-05-29 Martin Odersky , Yaoyu Zhao , Yichen Xu , Oliver Bračevac , Cao Nguyen Pham

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

Type-and-effect systems are a widely-used approach to program verification, verifying the result of a computation using types, and the behavior using effects. This paper extends an effect system for verifying temporal, value-dependent…

Programming Languages · Computer Science 2022-07-22 Taro Sekiyama , Hiroshi Unno

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

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

We present a straightforward, sound Hindley-Milner polymorphic type system for algebraic effects and handlers in a call-by-value calculus, which allows type variable generalisation of arbitrary computations, not just values. This result is…

Programming Languages · Computer Science 2017-04-20 Ohad Kammar , Matija Pretnar

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

The capture calculus is an extension of System F<: that tracks free variables of terms in their type, allowing one to represent capabilities while limiting their scope. While previous calculi had mechanized soundness proofs -- notably…

Logic in Computer Science · Computer Science 2023-09-12 Joseph Fourment , Yichen Xu

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

As popularity of algebraic effects and handlers increases, so does a demand for their efficient execution. Eff, an ML-like language with native support for handlers, has a subtyping-based effect system on which an effect-aware optimizing…

Programming Languages · Computer Science 2020-06-10 Georgios Karachalias , Matija Pretnar , Amr Hany Saleh , Stien Vanderhallen , Tom Schrijvers

We present an extension of System F with call-by-name exceptions. The type system is enriched with two syntactic constructs: a union type for programs whose execution may raise an exception at top level, and a corruption type for programs…

Programming Languages · Computer Science 2015-07-01 Sylvain Lebresne

The calculus of looping sequences is a formalism for describing the evolution of biological systems by means of term rewriting rules. We enrich this calculus with a type discipline to guarantee the soundness of reduction rules with respect…

Logic in Computer Science · Computer Science 2009-11-13 Mariangiola Dezani-Ciancaglini , Paola Giannini , Angelo Troina

Many effect systems for algebraic effect handlers are designed to guarantee that all invoked effects are handled adequately. However, respective researchers have developed their own effect systems that differ in how to represent the…

Programming Languages · Computer Science 2024-04-26 Takuma Yoshioka , Taro Sekiyama , Atsushi Igarashi

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 explore type systems and programming abstractions for the safe use of resources. In particular, we investigate how to use types to modularly specify and check when programs are allowed to use their resources, e.g., when programming a…

Programming Languages · Computer Science 2023-04-26 Danel Ahman
‹ Prev 1 2 3 10 Next ›