UpgradeJ: Incremental typechecking for class upgrades

24Citations
Citations of this article
29Readers
Mendeley users who have this article in their library.
Get full text

Abstract

One of the problems facing developers is the constant evolution of components that are used to build applications. This evolution is typical of any multi-person or multi-site software project. How can we program in this environment? More precisely, how can language design address such evolution? In this paper we attack two significant issues that arise from constant component evolution: we propose language-level extensions that permit multiple, co-existing versions of classes and the ability to dynamically upgrade from one version of a class to another, whilst still maintaining type safety guarantees and requiring only lightweight extensions to the runtime infrastructure. We show how our extensions, whilst intuitive, provide a great deal of power by giving a number of examples. Given the subtlety of the problem, we formalize a core fragment of our language and prove a number of important safety properties. © 2008 Springer-Verlag.

Cite

CITATION STYLE

APA

Bierman, G., Parkinson, M., & Noble, J. (2008). UpgradeJ: Incremental typechecking for class upgrades. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 5142 LNCS, pp. 235–259). https://doi.org/10.1007/978-3-540-70592-5_11

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free