Software diversity: state of the art and perspectives

I Schaefer, R Rabiser, D Clarke, L Bettini… - International Journal on …, 2012 - Springer
Diversity is prevalent in modern software systems to facilitate adapting the software to
customer requirements or the execution environment. Diversity has an impact on all phases …

Contracts for higher-order functions

RB Findler, M Felleisen - Proceedings of the seventh ACM SIGPLAN …, 2002 - dl.acm.org
Assertions play an important role in the construction of robust software. Their use in
programming languages dates back to the 1970s. Eiffel, an object-oriented programming …

Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs

Y Smaragdakis, D Batory - ACM Transactions on Software Engineering …, 2002 - dl.acm.org
A" refinement" is a functionality addition to a software project that can affect multiple
dispersed implementation entities (functions, classes, etc.). In this paper, we examine large …

MultiJava: Modular open classes and symmetric multiple dispatch for Java

C Clifton, GT Leavens, C Chambers… - Proceedings of the 15th …, 2000 - dl.acm.org
We present MultiJava, a backward-compatible extension to Java supporting open classes
and symmetric multiple dispatch. Open classes allow one to add to the set of methods that …

FeatureC++: On the symbiosis of feature-oriented and aspect-oriented programming

S Apel, T Leich, M Rosenmüller, G Saake - Generative Programming and …, 2005 - Springer
This paper presents FeatureC++, a novel language extension to C++ that supports Feature-
Oriented Programming (FOP) and Aspect-Oriented Programming (AOP). Besides well …

A {Low-Overhead},{High-Performance} Unified Buffer Management Scheme That Exploits Sequential and Loo** References

JM Kim, J Choi, J Kim, SH Noh, SL Min, Y Cho… - Fourth Symposium on …, 2000 - usenix.org
In traditional file system implementations, the Least Recently Used (LRU) block replacement
scheme is widely used to manage the buffer cache due to its simplicity and adaptability …

Independently extensible solutions to the expression problem

M Zenger, M Odersky - 2004 - infoscience.epfl.ch
Résumé The* expression problem* is fundamental for the development of extensible
software. Many (partial) solutions to this important problem have been proposed in the past …

Evaluating support for features in advanced modularization technologies

RE Lopez-Herrejon, D Batory, W Cook - … , Glasgow, UK, July 25-29, 2005 …, 2005 - Springer
A software product-line is a family of related programs. Each program is defined by a unique
combination of features, where a feature is an increment in program functionality …

Jiazzi: new-age components for old-fasioned Java

S McDirmid, M Flatt, WC Hsieh - ACM SIGPLAN Notices, 2001 - dl.acm.org
We present Jiazzi, a system that enables the construction of large-scale binary components
in Java. Jiazzi components can be thought of as generalizations of Java packages with …

Achieving extensibility through product-lines and domain-specific languages: a case study

D Batory, C Johnson, B MacDonald… - ACM Transactions on …, 2002 - dl.acm.org
This is a case study in the use of product-line architectures (PLAs) and domain-specific
languages (DSLs) to design an extensible command-and-control simulator for Army fire …