Synthesizing objects

TitleSynthesizing objects
Publication TypeJournal Article
Year of Publication2000
AuthorsCzarnecki, K., and U. Eisenecker
JournalConcurrency - Practice and Experience

This paper argues that the current OO technology does not support
reuse and configurability in an effective way. This problem can be
addressed by augmenting OO Analysis and Design with feature modeling
and by applying generative implementation techniques. Feature modeling
allows capturing the variability of domain concepts. Concrete concept
instances can then be synthesized from abstract specifications. Using
a simple example of a configurable list component, we demonstrate the
application of feature modeling and how to implement a feature model
as a generator. We introduce the concepts of configuration
repositories and configuration generators and show how to implement
them using object- oriented, generic, and generative language
mechanisms. Interestingly, a configuration repository represents an
effective approach for typing synthesized recursive classes. The
configuration generator utilizes C++ template metaprogramming, which
enables its execution at compile-time.

ecoop99.pdf133.52 KB