We investigate semantics-based type assignment for class-based object-oriented programming. Our motivation is developing a theoretical basis for practical, expressive, type-based analysis of the functional behaviour of object-oriented programs. We focus our research using Featherweight Java, studying two notions of type assignment:- one using intersection types, the other a ‘logical’ restriction of recursive types. We extend to the object-oriented setting some existing results for intersection type systems. In doing so, we contribute to the study of denotational semantics for object-oriented languages. We define a model for Featherweight Java based on approximation, which we relate to our intersection type system via an Approximatio...
We consider a semantics for a class-based object-oriented calculus based upon approximation; since i...
We present an imperative object-oriented language featuring a dependent type system designed to supp...
We study set-theoretic types: types that include union, intersection, and negation connectives. Set-...
We investigate semantics-based type assignment for class-based object-oriented programming. Our mo-t...
We consider semantics for the class-based object-oriented calculus Featherweight Java (without casts...
We show how Java intersection types can be freed from their confinement in type casts, in such a way...
Type-checked object-oriented languages have typically been designed with extremely simple type syste...
We present FJ&$lambda$, a new core calculus that extends Featherweight Java (FJ) with interfaces, s...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Family polymorphism has been proposed for object-oriented languages as a solution to supporting reus...
Family polymorphism has been proposed for object-oriented languages as a solution to supporting reus...
AbstractType-directed programming is an important and widely used paradigm in the design of software...
In this paper, we propose an integration of structural subtyping with boolean connectives and semant...
In this paper we present a new approach to the semantics of data types, in which the types themselve...
We consider a semantics for a class-based object-oriented calculus based upon approximation; since i...
We present an imperative object-oriented language featuring a dependent type system designed to supp...
We study set-theoretic types: types that include union, intersection, and negation connectives. Set-...
We investigate semantics-based type assignment for class-based object-oriented programming. Our mo-t...
We consider semantics for the class-based object-oriented calculus Featherweight Java (without casts...
We show how Java intersection types can be freed from their confinement in type casts, in such a way...
Type-checked object-oriented languages have typically been designed with extremely simple type syste...
We present FJ&$lambda$, a new core calculus that extends Featherweight Java (FJ) with interfaces, s...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Family polymorphism has been proposed for object-oriented languages as a solution to supporting reus...
Family polymorphism has been proposed for object-oriented languages as a solution to supporting reus...
AbstractType-directed programming is an important and widely used paradigm in the design of software...
In this paper, we propose an integration of structural subtyping with boolean connectives and semant...
In this paper we present a new approach to the semantics of data types, in which the types themselve...
We consider a semantics for a class-based object-oriented calculus based upon approximation; since i...
We present an imperative object-oriented language featuring a dependent type system designed to supp...
We study set-theoretic types: types that include union, intersection, and negation connectives. Set-...