kirancodes.me
To Proof Maintenance & Beyond!

Automatic inference of stationary fields: a generalization of java's final fields

Christopher Unkel, Monica S. Lam

Abstract

Java programmers can document that the relationship between two objects is unchanging by declaring the field that encodes that relationship to be final. This information can be used in program understanding and detection of errors in new code additions. Unfortunately, few fields in programs are actually declared final. Programs often contain fields that could be final, but are not declared so. Moreover, the definition of final has restrictions on initializationthat limit its applicability.

Related papers