Declarative Specialization of Object-Oriented Programs

Eugen-Nicolae Volanschi, Charles Consel, Gilles Muller, Crispin Cowan. Declarative Specialization of Object-Oriented Programs. In OOPSLA. pages 286-300, 1997. [doi]

Abstract

Designing and implementing generic software components is encouraged by languages such as object-oriented ones and commonly advocated in most application areas. Generic software components have many advantages among which the most important is reusability. However, it comes at a price: genericity often incurs a loss of efficiency.This paper presents an approach aimed at reconciling genericity and efficiency. To do so, we introduce declarations to the Java language to enable a programmer to specify how generic programs should be specialized for a particular usage pattern. Our approach has been implemented as a compiler from our extended language into standard Java.