2012
DOI: 10.1145/2345156.1993570
|View full text |Cite
|
Sign up to set email alerts
|

Taming wildcards in Java's type system

Abstract: Wildcards have become an important part of Java's type system since their introduction 7 years ago. Yet there are still many open problems with Java's wildcards. For example, there are no known sound and complete algorithms for subtyping (and consequently type checking) Java wildcards, and in fact subtyping is suspected to be undecidable because wildcards are a form of bounded existential types. Furthermore, some Java types with wildcards have no joins, making inference of type arguments for generic methods pa… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
22
0

Year Published

2014
2014
2019
2019

Publication Types

Select...
4
1

Relationship

1
4

Authors

Journals

citations
Cited by 8 publications
(22 citation statements)
references
References 2 publications
0
22
0
Order By: Relevance
“…However, here we will be using use-site variance, a simplification of Java wildcards [6]. Tate discusses the relationships between these systems [19], but for this paper one need only understand that use-site variance is more expressive than declaration-site variance and discards the implicit constraints of wildcards, since the complications of implicit constraints far outweigh their usefulness [20].…”
Section: Materials and Shapesmentioning
confidence: 99%
See 4 more Smart Citations
“…However, here we will be using use-site variance, a simplification of Java wildcards [6]. Tate discusses the relationships between these systems [19], but for this paper one need only understand that use-site variance is more expressive than declaration-site variance and discards the implicit constraints of wildcards, since the complications of implicit constraints far outweigh their usefulness [20].…”
Section: Materials and Shapesmentioning
confidence: 99%
“…In Section 6, we will discuss additional existing challenges and new features we hope to address in future work by extending the techniques we present here. [11,20], and consequently we can use it to cause javac to stack overflow. ‡ When we refer to javac we mean the OpenJDK 1.7.0 25 type checker.…”
Section: Applicationsmentioning
confidence: 99%
See 3 more Smart Citations