Sciweavers

OOPSLA
2004
Springer

Scalable extensibility via nested inheritance

13 years 9 months ago
Scalable extensibility via nested inheritance
Inheritance is a useful mechanism for factoring and reusing code. However, it has limitations for building extensible systems. We describe nested inheritance, a mechanism that addresses some of the limitations of ordinary inheritance and other code reuse mechanisms. Using our experience with an extensible compiler framework, we show how nested inheritance can be used to construct highly extensible software frameworks. The essential aspects of nested inheritance are formalized in a simple object-oriented language with an operational semantics and type system. The type system of this language is sound, so no run-time type checking is required to implement it and no run-time type errors can occur. We describe our implementation of nested inheritance as an unobtrusive extension of the Java language, called Jx. Our prototype implementation translates Jx code to ordinary Java code, without duplicating inherited code. Categories and Subject Descriptors D.3.2 [Language Classifications]: Obje...
Nathaniel Nystrom, Stephen Chong, Andrew C. Myers
Added 02 Jul 2010
Updated 02 Jul 2010
Type Conference
Year 2004
Where OOPSLA
Authors Nathaniel Nystrom, Stephen Chong, Andrew C. Myers
Comments (0)