Runtime support for type-safe dynamic Java classes

``Runtime support for type-safe dynamic Java classes'' by Scott Malabarba, Raju Pandey, Jeff Gragg, Earl Barr, and J. Fritz Barnes. In European Conf. on Object-Oriented Programming, 2000.
Annotation: [by Steven Richman] Malabarba et al. bring dynamic classes to {Java} by modifying the virtual machine and adding a dynamic class loader. Type correctness is checked when an upgrade in compiled. Specifically, their compiler guarantees that the set of new and changed classes comprising an update forms a complete upgrade if the changes are applied atomically. In their implementation, upgrades occur in an atomic global update, but objects are transformed lazily, as in our persistent object base. A quick initial marking phase tags all reachable objects that need to be upgraded, and any subsequent references to marked objects trap to an upgrader that suspends all threads and brings the objects up to date. No general state transformation facility is provided; fields are simply copied from old objects to new objects and new fields are initialized to default values.

BibTeX entry:

@inproceedings{malabarba00runtime,
   author = {Scott Malabarba and Raju Pandey and Jeff Gragg and Earl Barr
	and J. Fritz Barnes},
   title = {Runtime support for type-safe dynamic {Java} classes},
   booktitle = {European Conf. on Object-Oriented Programming},
   year = {2000}
}

Also see software upgrades publications by date.

Sameer Ajmani