A promising approach for type-safe generic codes in the object-oriented paradigm is variant parametric type, which allows covari-ant and contravariant subtyping on fields where appropriate. Pre-vious approaches formalise variant type as a special case of the existential type system. In this paper, we present a new framework based on flow analysis and modular type checking to provide a sim-ple but accurate model for capturing generic types. Our scheme stands to benefit from past (and future) advances in flow analysis and subtyping constraints. Furthermore, it fully supports casting for variant types with a special reflection mechanism, called cast capture, to handle objects with unknown types. We have built a constraint-based type checker an...
Java 1.5 will include a type system (called JSR-14) that supports parametric poly-morphism, or gener...
Variant parametric types have been introduced to provide a flexible subtyping mechanism for generic ...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
We develop the mechanism of variant parametric types as a means to enhance synergy between parametri...
10.1145/1167473.1167498Proceedings of the Conference on Object-Oriented Programming Systems, Languag...
. Parametric types and virtual types have recently been proposed as extensions to Java to support ge...
AbstractExisting type systems for object calculi are based on invariant subtyping. Subtyping invaria...
Abstract: The Eclipse infrastructure for modeling is based on EMF, an implemen-tation of Essential M...
AbstractVirtual types have been proposed as a notation for generic programming in object-oriented la...
Use-site variance approaches such as Java wildcards allows to flexibly derive many co- and contravar...
AbstractWe study the incorporation of generic types in aspect languages. Since advice acts like meth...
Generic object-oriented programming languages combine parametric polymorphism and nominal subtype po...
This paper introduces the Checker Framework, which supports adding pluggable type systems to the Jav...
Existing type systems for object calculi are based on invariant subtyping. Subtyping invariance is r...
Java 1.5 will include a type system (called JSR-14) that supports parametric polymorphism, or generi...
Java 1.5 will include a type system (called JSR-14) that supports parametric poly-morphism, or gener...
Variant parametric types have been introduced to provide a flexible subtyping mechanism for generic ...
Type-directed programming is an important and widely used paradigm in the design of software. With t...
We develop the mechanism of variant parametric types as a means to enhance synergy between parametri...
10.1145/1167473.1167498Proceedings of the Conference on Object-Oriented Programming Systems, Languag...
. Parametric types and virtual types have recently been proposed as extensions to Java to support ge...
AbstractExisting type systems for object calculi are based on invariant subtyping. Subtyping invaria...
Abstract: The Eclipse infrastructure for modeling is based on EMF, an implemen-tation of Essential M...
AbstractVirtual types have been proposed as a notation for generic programming in object-oriented la...
Use-site variance approaches such as Java wildcards allows to flexibly derive many co- and contravar...
AbstractWe study the incorporation of generic types in aspect languages. Since advice acts like meth...
Generic object-oriented programming languages combine parametric polymorphism and nominal subtype po...
This paper introduces the Checker Framework, which supports adding pluggable type systems to the Jav...
Existing type systems for object calculi are based on invariant subtyping. Subtyping invariance is r...
Java 1.5 will include a type system (called JSR-14) that supports parametric polymorphism, or generi...
Java 1.5 will include a type system (called JSR-14) that supports parametric poly-morphism, or gener...
Variant parametric types have been introduced to provide a flexible subtyping mechanism for generic ...
Type-directed programming is an important and widely used paradigm in the design of software. With t...