Sciweavers

PPPJ
2009
ACM

Three approaches to object evolution

14 years 7 months ago
Three approaches to object evolution
Dynamic object reclassification allows changes to the type of an object at runtime. This paper makes the case for object evolution, a restriction of general reclassification by which an object may gain, but never lose properties. We argue that evolution is an expressive and useful language construct and can be implemented efficiently. Further, the monotonicity property of evolution promotes static type-safety better than general reclassification. We describe three concrete variants of evolution, relying on inheritance, mixins and shakeins, and explain how any combination of these can be integrated into a concrete programming language. We chart the language design space, mention our implementation, and introduce the notion of evolvers, a critical mechanism for maintaining class invariants in the course of reclassification.
Tal Cohen, Joseph Gil
Added 19 May 2010
Updated 19 May 2010
Type Conference
Year 2009
Where PPPJ
Authors Tal Cohen, Joseph Gil
Comments (0)