Show simple item record

dc.contributor.advisorMichael Ernst
dc.contributor.authorPapi, Matthew M.
dc.contributor.authorAli, Mahmood
dc.contributor.authorCorrea Jr., Telmo Luis
dc.contributor.authorPerkins, Jeff H.
dc.contributor.authorErnst, Michael D.
dc.contributor.otherProgram Analysis
dc.date.accessioned2007-09-20T19:21:48Z
dc.date.available2007-09-20T19:21:48Z
dc.date.issued2007-09-17
dc.identifier.otherMIT-CSAIL-TR-2007-047
dc.identifier.urihttp://hdl.handle.net/1721.1/38878
dc.description.abstractWe have created a framework for adding custom type qualifiers to the Javalanguage in a backward-compatible way. The type system designer definesthe qualifiers and creates a compiler plug-in that enforces theirsemantics. Programmers can write the type qualifiers in their programs andbe informed of errors or assured that the program is free of those errors.The system builds on existing Java tools and APIs.In order to evaluate our framework, we have written four type-checkersusing the framework: for a non-null type system that can detect andprevent null pointer errors; for an interned type system that can detectand prevent equality-checking errors; for a reference immutability typesystem, Javari, that can detect and prevent mutation errors; and for areference and object immutability type system, IGJ, that can detect andprevent even more mutation errors. We have conducted case studies usingeach checker to find real errors in existing software. These case studiesdemonstrate that the checkers and the framework are practical and useful.
dc.format.extent10 p.
dc.relation.ispartofseriesMassachusetts Institute of Technology Computer Science and Artificial Intelligence Laboratory
dc.titlePluggable type-checking for custom type qualifiers in Java


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record