Effect systems are important for reasoning about the side effects of a program. Although effect systems have been around for decades, they have not been widely adopted in practice because of the large number of annotations that they require. A tool that infers effects automatically can make effect systems practical. We present an effect inference algorithm and an Eclipse plug-in, DPJizer, which alleviate the burden of writing effect annotations for a language called Deterministic Parallel Java (DPJ). The key novel feature of the algorithm is the ability to infer effects on nested heap regions. Besides DPJ, we also illustrate how the algorithm can be used for a different effect system based on object ownership. Our experience shows that DPJi...
Side-effect analysis gives information about the set of locations that a statement may read or modi...
Small changes can have major and nonlocal effects in object oriented languages, due to the extensive...
With the rising variety of hardware designs for multi-core systems, the effectiveness in exploiting ...
Effect systems are important for reasoning about the side effects of a program. Although effect sys...
In this paper, we present the first full regions-and-effects inference algorithm for explicitly para...
Abstract. When using today’s common shared-memory parallel pro-gramming models, subtle errors can le...
AbstractAn effects system can be used to delimit the scope of computational effects within a program...
We introduce a precise interprocedural effect analysis for programs with mutable state, dynamic obje...
This thesis presents a new, Java-based object-oriented parallel language called Deterministic Paral...
In the context of an object-oriented programming language such as Java, the ubiquitous use of instan...
AbstractThis paper describes a flexible type and effect inference system for Featherweight Java (FJ)...
We introduce a precise interprocedural effect analysis for programs with mutable state, dynamic obje...
We describe a type and effect system for ensuring deterministic semantics in a concurrent object-ori...
Abstract. We present a unification-based, context-sensitive escape and effect analysis that infers l...
Type-and-effect systems are a well-studied approach for reasoning about the computational behavior o...
Side-effect analysis gives information about the set of locations that a statement may read or modi...
Small changes can have major and nonlocal effects in object oriented languages, due to the extensive...
With the rising variety of hardware designs for multi-core systems, the effectiveness in exploiting ...
Effect systems are important for reasoning about the side effects of a program. Although effect sys...
In this paper, we present the first full regions-and-effects inference algorithm for explicitly para...
Abstract. When using today’s common shared-memory parallel pro-gramming models, subtle errors can le...
AbstractAn effects system can be used to delimit the scope of computational effects within a program...
We introduce a precise interprocedural effect analysis for programs with mutable state, dynamic obje...
This thesis presents a new, Java-based object-oriented parallel language called Deterministic Paral...
In the context of an object-oriented programming language such as Java, the ubiquitous use of instan...
AbstractThis paper describes a flexible type and effect inference system for Featherweight Java (FJ)...
We introduce a precise interprocedural effect analysis for programs with mutable state, dynamic obje...
We describe a type and effect system for ensuring deterministic semantics in a concurrent object-ori...
Abstract. We present a unification-based, context-sensitive escape and effect analysis that infers l...
Type-and-effect systems are a well-studied approach for reasoning about the computational behavior o...
Side-effect analysis gives information about the set of locations that a statement may read or modi...
Small changes can have major and nonlocal effects in object oriented languages, due to the extensive...
With the rising variety of hardware designs for multi-core systems, the effectiveness in exploiting ...