English
Related papers

Related papers: Type-based Enforcement of Infinitary Trace Propert…

200 papers

We present in this paper a new type and effect system for Java which can be used to ensure adherence to guidelines for secure web programming. The system is based on the region and effect system by Beringer, Grabowski, and Hofmann. It…

Programming Languages · Computer Science 2018-01-24 Serdar Erbatur , Martin Hofmann , Eugen Zalinescu

Java's type system mostly relies on type checking augmented with local type inference to improve programmer convenience. We study global type inference for Featherweight Generic Java (FGJ), a functional Java core language. Given generic…

Programming Languages · Computer Science 2022-05-20 Andreas Stadelmeier , Martin Plümicke , Peter Thiemann

We present FJ&$\lambda$, a new core calculus that extends Featherweight Java (FJ) with interfaces, supporting multiple inheritance in a restricted form, $\lambda$-expressions, and intersection types. Our main goal is to formalise how…

Logic in Computer Science · Computer Science 2023-06-22 Lorenzo Bettini , Viviana Bono , Mariangiola Dezani-Ciancaglini , Paola Giannini , Betti Venneri

This paper addresses compositional and incremental type checking for object-oriented programming languages. Recent work achieved incremental type checking for structurally typed functional languages through co-contextual typing rules, a…

Programming Languages · Computer Science 2018-05-24 Edlira Kuci , Sebastian Erdweg , Oliver Bračevac , Andi Bejleri , Mira Mezini

We present a type-theoretic framework for reasoning about incorrectness in functional programs that interact with effectful, opaque library APIs. Our approach centers on traces -- temporally-ordered sequences of library API invocations --…

Programming Languages · Computer Science 2025-09-03 Yongwei Yuan , Zhe Zhou , Julia Belyakova , Benjamin Delaware , Suresh Jagannathan

Resource-aware type systems statically approximate not only the expected result type of a program, but also the way external resources are used, e.g., how many times the value of a variable is needed. We extend the type system of…

Programming Languages · Computer Science 2023-02-16 Riccardo Bianchini , Francesco Dagnino , Paola Giannini , Elena Zucca

We present a type system and inference algorithm for a rich subset of JavaScript equipped with objects, structural subtyping, prototype inheritance, and first-class methods. The type system supports abstract and recursive objects, and is…

Programming Languages · Computer Science 2016-10-19 Satish Chandra , Colin S. Gordon , Jean-Baptiste Jeannin , Cole Schlesinger , Manu Sridharan , Frank Tip , Youngil Choi

We demonstrate a method to infer polymorphically principal and subtyping-minimal types for an ML-like core language by assigning ranges within a lattice to type variables. We demonstrate the termination and completeness of this algorithm,…

Programming Languages · Computer Science 2013-08-14 Eli Gottlieb

We describe a new concrete approach to giving predictable error locations for sequential (flow-sensitive) effect systems. Prior implementations of sequential effect systems rely on either computing a bottom-up effect and comparing it to a…

Programming Languages · Computer Science 2023-08-01 Colin S. Gordon , Chaewon Yun

Inferring the types of API elements in incomplete code snippets (e.g., those on Q&A forums) is a prepositive step required to work with the code snippets. Existing type inference methods can be mainly categorized as constraint-based or…

Software Engineering · Computer Science 2024-02-16 Zhixiang Chen , Anji Li , Neng Zhang , Jianguo Chen , Yuan Huang , Zibin Zheng

Extending a given language with new dedicated features is a general and quite used approach to make the programming language more adapted to problems. Being closer to the application, this leads to less programming flaws and easier…

Logic in Computer Science · Computer Science 2010-03-26 Claude Kirchner , Pierre-Etienne Moreau , Cláudia Tavares

We develop a new type and effect system based on B\"uchi automata to capture finite and infinite traces produced by programs in a small language which allows non-deterministic choices and infinite recursions. There are two key technical…

Logic in Computer Science · Computer Science 2014-01-22 Martin Hofmann , Wei Chen

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

Recent years have seen growing interest in the retrofitting of type systems onto dynamically-typed programming languages, in order to improve type safety, programmer productivity, or performance. In such cases, type system developers must…

Programming Languages · Computer Science 2016-05-05 Esben Andreasen , Colin S. Gordon , Satish Chandra , Manu Sridharan , Frank Tip , Koushik Sen

We propose a novel type system for verifying that programs correctly implement constant-resource behavior. Our type system extends recent work on automatic amortized resource analysis (AARA), a set of techniques that automatically derive…

Programming Languages · Computer Science 2018-01-09 Van Chan Ngo , Mario Dehesa-Azuara , Matthew Fredrikson , Jan Hoffmann

A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence,…

Programming Languages · Computer Science 2018-02-20 Emmanuel Hainry , Romain Péchoux

In this paper we focus on exploiting a specification and the structures that satisfy it, to obtain a means of comparing implemented and expected behaviours and find the origin of faults in implementations. We present an approach to the…

Software Engineering · Computer Science 2013-03-06 Isabel Nunes , Filipe Luís

Over the last two decades practically all object-oriented programming languages have introduced features that are well-known from functional programming languages. But many features that were introduced were fragmentary. In Java-TX we…

Programming Languages · Computer Science 2024-12-05 Martin Pluemicke

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

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
‹ Prev 1 2 3 10 Next ›