Java Type Soundness Revisited (2000)
| Citations: | 28 - 1 self |
BibTeX
@MISC{Drossopoulou00javatype,
author = {Sophia Drossopoulou and Tanya Valkevych and Susan Eisenbach},
title = {Java Type Soundness Revisited},
year = {2000}
}
OpenURL
Abstract
We present an operational semantics, type system, and a proof of type soundness for a substantial subset of Java. The subset includes interfaces, classes, inheritance, field hiding, method overloading and overriding, arrays with associated dynamic checks, and exception handling. We distinguish between normal execution, where no exception is thrown -- or, more precisely, any exception thrown is handled -- and abnormal execution, where an exception is thrown and not handled. The type system distinguishes normal types which describe the possible outcomes of normal execution, and abnormal types which describe the possible outcomes of abnormal execution. The type of a term consists of its normal type and its abnormal type. With this set-up we prove subject reduction. Thus, the meaning of our subject reduction theorem is stronger than usual: it guarantees that normal execution returns a value of a type compatible with the normal type of the term, and that abnormal execution throws an exception ...







