English
Related papers

Related papers: Don't exhaust, don't waste

200 papers

The extensive deployment of probabilistic algorithms has radically changed our perspective on several well-established computational notions. Correctness is probably the most basic one. While a typical probabilistic program cannot be said…

Logic in Computer Science · Computer Science 2025-02-17 Francesco A. Genco , Giuseppe Primiero

In this paper we invite the reader to a journey through three lambda calculi with resource control: the lambda calculus, the sequent lambda calculus, and the lambda calculus with explicit substitution. All three calculi enable explicit…

Logic · Mathematics 2013-06-11 Silvia Ghilezan , Jelena Ivetic , Pierre Lescanne , Silvia Likavec

We consider the termination/non-termination property of a class of loops. Such loops are commonly used abstractions of real program pieces. Second-order logic is a convenient language to express non-termination. Of course, such property is…

Logic in Computer Science · Computer Science 2014-12-11 Fred Mesnard , Etienne Payet

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

Terminological knowledge representation systems (TKRSs) are tools for designing and using knowledge bases that make use of terminological languages (or concept languages). We analyze from a theoretical point of view a TKRS whose…

Artificial Intelligence · Computer Science 2014-11-17 M. Buchheit , F. M. Donini , A. Schaerf

Typestate systems are notoriously complex as they require sophisticated machinery for tracking aliasing. We propose a new, transition-oriented foundation for typestate in the setting of impure functional programming. Our approach relies on…

Programming Languages · Computer Science 2024-09-27 Hannes Saffrich , Yuki Nishida , Peter Thiemann

We introduce two-sided type systems, which are sequent calculi for typing formulas. Two-sided type systems allow for hypothetical reasoning over the typing of compound program expressions, and the refutation of typing formulas. By…

Programming Languages · Computer Science 2023-10-23 Steven Ramsay , Charlie Walpole

We present a compositional framework for certifying resource bounds in typed programs. Terms are typed with synthesized bounds drawn from an abstract resource lattice, enabling uniform treatment of time, memory, gas, and domain-specific…

Logic in Computer Science · Computer Science 2025-12-09 Mirco A. Mannucci , Corey Thuro

Bidirectional typechecking, in which terms either synthesize a type or are checked against a known type, has become popular for its applicability to a variety of type systems, its error reporting, and its ease of implementation. Following…

Programming Languages · Computer Science 2020-09-22 Jana Dunfield , Neelakantan R. Krishnaswami

Types-and-effects are type systems, which allow one to express general semantic properties and to statically reason about program's execution. They have been widely exploited to specify static analyses, for example to track computational…

Logic in Computer Science · Computer Science 2011-08-12 Letterio Galletta , Giorgio Levi

In sequential functional languages, sized types enable termination checking of programs with complex patterns of recursion in the presence of mixed inductive-coinductive types. In this paper, we adapt sized types and their metatheory to the…

Programming Languages · Computer Science 2024-04-16 Siva Somayyajula , Frank Pfenning

We focus on the production of efficient descriptions of objects, actions and events. We define a type of efficiency, textual economy, that exploits the hearer's recognition of inferential links to material elsewhere within a sentence.…

cmp-lg · Computer Science 2007-05-23 Matthew Stone , Bonnie Webber

Many different systems with explicit substitutions have been proposed to implement a large class of higher-order languages. Motivations and challenges that guided the development of such calculi in functional frameworks are surveyed in the…

Programming Languages · Computer Science 2015-07-01 Delia Kesner

A typical way of analyzing the time complexity of functional programs is to extract a recurrence expressing the running time of the program in terms of the size of its input, and then to solve the recurrence to obtain a big-O bound. For…

Programming Languages · Computer Science 2020-08-03 Joseph W. Cutler , Daniel R. Licata , Norman Danner

We present a linear functional calculus with both the safety guarantees expressible with linear types and the rich language of combinators and composition provided by functional programming. Unlike previous combinations of linear typing and…

Programming Languages · Computer Science 2017-03-17 J. Garrett Morris

In the first part of this paper, we define two resource aware typing systems for the {\lambda}{\mu}-calculus based on non-idempotent intersection and union types. The non-idempotent approach provides very simple combinatorial…

Logic in Computer Science · Computer Science 2023-06-22 Delia Kesner , Pierre Vial

We investigate program equivalence for linear higher-order(sequential) languages endowed with primitives for computational effects. More specifically, we study operationally-based notions of program equivalence for a linear…

Programming Languages · Computer Science 2021-06-25 Ugo Dal Lago , Francesco Gavazzo

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

Type-level programming is an increasingly popular way to obtain additional type safety. Unfortunately, it remains a second-class citizen in the majority of industrially-used programming languages. We propose a new dependently-typed system…

Programming Languages · Computer Science 2020-11-17 Georg Stefan Schmid , Olivier Blanvillain , Jad Hamza , Viktor Kunčak

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