Companion to the 22nd ACM SIGPLAN Conference on Object Oriented Programming Systems and Applications Companion - OOPSLA '07 2007
DOI: 10.1145/1297846.1297911
|View full text |Cite
|
Sign up to set email alerts
|

Compile-time type-checking for custom type qualifiers in Java

Abstract: We have created a system that enables programmers to add custom type qualifiers to the Java language in a backwardcompatible way. The system allows programmers to write type qualifiers in their programs and to create compiler plugins that enforce the semantics of these qualifiers at compile time. The system builds on existing Java tools and APIs, and on JSR 308.As an example, we introduce a plug-in to Sun's Java compiler that uses our system to type-check the NonNull qualifier. Programmers can use the @NonNull… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1

Citation Types

0
3
0

Year Published

2014
2014
2016
2016

Publication Types

Select...
2
1

Relationship

1
2

Authors

Journals

citations
Cited by 3 publications
(3 citation statements)
references
References 0 publications
0
3
0
Order By: Relevance
“…polyread may occur on fields of method-local classes, and Javarifier inferred such annotations in our case studies. polyread is critical for precision; in the JDK, polyread is needed 70% as often as readonly [19]. polyread is not expressible in terms of Java generics; neither of polyread and ?…”
Section: ? Readonlymentioning
confidence: 99%
See 1 more Smart Citation
“…polyread may occur on fields of method-local classes, and Javarifier inferred such annotations in our case studies. polyread is critical for precision; in the JDK, polyread is needed 70% as often as readonly [19]. polyread is not expressible in terms of Java generics; neither of polyread and ?…”
Section: ? Readonlymentioning
confidence: 99%
“…Birka built a type-checker for an earlier dialect of Javari that lacked support for Java generics, and wrote 160,000 lines of code in Javari [6]. Correa later wrote a complete Javari implementation using the Checker Framework [20] and did case studies involving 13,000 lines of Javari [19]. The JQual inference system [14] (discussed above) can be treated as a type checker.…”
Section: Related Workmentioning
confidence: 99%
“…Fähndrich and Leino propose to distinguish the non-null references from the possibly-null ones at the type level (using annotations) to detect null-related bugs [30]. Papi and Ernst introduced the @NonNull annotation on types [31]. Loginov et al [23], beside their inter-procedural null dereference analysis, propose null-related annotations to ensure the soundness and safety of the analysis.…”
Section: Related Workmentioning
confidence: 99%