SafeJava: A Unified Type System for Safe Programming (2004)
Cached
Download Links
| Citations: | 54 - 2 self |
BibTeX
@TECHREPORT{Boyapati04safejava:a,
author = {Chandrasekhar Boyapati},
title = {SafeJava: A Unified Type System for Safe Programming},
institution = {},
year = {2004}
}
Years of Citing Articles
OpenURL
Abstract
Making software reliable is one of the most important technological challenges facing our society today. This thesis presents a new type system that addresses this problem by statically preventing several important classes of programming errors. If a program type checks, we guarantee at compile time that the program does not contain any of those errors. We designed our type system in the context of a Java-like object-oriented language; we call the resulting system SafeJava. The SafeJava type system offers significant software engineering benefits. Specifically, it provides a statically enforceable way of specifying object encapsulation and enables local reasoning about program correctness; it combines effects clauses with encapsulation to enable modular checking of methods in the presence of subtyping; it statically prevents data races and deadlocks in multithreaded programs, which are known to be some of the most difficult programming errors to detect, reproduce, and







