Region-based type systems are a powerful tool for various kinds of program analysis. We introduce a new inference algorithm for region types based on an abstract notion of environment transformation. It analyzes the code of a method only once, even when there are multiple invocations of the method of different region types in the program. Elements of such an abstract transformation are essentially constraints for equality and subtyping that capture flow information of the program. In particular, we work with access graphs in the definition of abstract transformations to guarantee the termination of the inference algorithm, because they provide a finite representation of field access paths.Comment: To appear at APLAS'22; arXiv version contai...
In the area of type-based program synthesis, the decision problem of inhabitation (given a type envi...
We present a new static system that reconstructs the types, regions and effects of expressions in an...
AbstractType inference is the compile-time process of reconstructing missing type information in a p...
This is an artifact accompanying the paper "Inferring Region Types via an Abstract Notion of Environ...
Region-based memory management offers several important potential advantages over garbage collection...
Region-based type systems provide programmer control over memory management without sacrificing type...
This paper presents a region inference framework designed specifically for imperative programs with...
A partial type inference technique should come with a simple and precise specification, so that user...
Abstract. Safe is a first-order eager language with facilities for pro-grammer controlled destructio...
In a typical COBOL program, the data division consists of 50 of the lines of code. Automatic type in...
In a typical COBOL program, the data division consists of 50 % of the lines of code. Automatic type ...
Region-based type systems provide programmer control over memory management without sacrificing type...
How Good is Local Type Inference? A partial type inference technique should come with a simple and p...
Type inference is a key component of modern statically typed programming languages. It allows progra...
The behavior of languages such as C++, Java, Smalltalk and Eiffel and the modeling features such cla...
In the area of type-based program synthesis, the decision problem of inhabitation (given a type envi...
We present a new static system that reconstructs the types, regions and effects of expressions in an...
AbstractType inference is the compile-time process of reconstructing missing type information in a p...
This is an artifact accompanying the paper "Inferring Region Types via an Abstract Notion of Environ...
Region-based memory management offers several important potential advantages over garbage collection...
Region-based type systems provide programmer control over memory management without sacrificing type...
This paper presents a region inference framework designed specifically for imperative programs with...
A partial type inference technique should come with a simple and precise specification, so that user...
Abstract. Safe is a first-order eager language with facilities for pro-grammer controlled destructio...
In a typical COBOL program, the data division consists of 50 of the lines of code. Automatic type in...
In a typical COBOL program, the data division consists of 50 % of the lines of code. Automatic type ...
Region-based type systems provide programmer control over memory management without sacrificing type...
How Good is Local Type Inference? A partial type inference technique should come with a simple and p...
Type inference is a key component of modern statically typed programming languages. It allows progra...
The behavior of languages such as C++, Java, Smalltalk and Eiffel and the modeling features such cla...
In the area of type-based program synthesis, the decision problem of inhabitation (given a type envi...
We present a new static system that reconstructs the types, regions and effects of expressions in an...
AbstractType inference is the compile-time process of reconstructing missing type information in a p...