Computing Publications

Publications Home » On Subtyping, Wildcards, and Exis...

On Subtyping, Wildcards, and Existential Types

Conference or Workshop Paper
11th Workshop on Formal techniques for Java-like Programs
ACM Digital Library
July, 2009

Wildcards are an often confusing part of the Java type system: the behaviour of wildcard types is not fully specified by subtyping, due to wildcard capture, and the rules for type checking are often misunderstood. Their very formulation seems somehow `different' from the rest of the Java type system, which is based on a simple, nominal hierarchy.

We investigate subtyping in models for Java with and without generics and wildcards. We separate subclassing from subtyping, unify subtyping for class and wildcard types using existential types, and show that Java wildcards emerge naturally from the combination of inclusion and parametric polymorphism.

BibTEX file for the publication built & maintained by Ashok Argent-Katwala.