A comparative study of techniques to write customizable libraries

  • Authors:
  • Baris Aktemur;Sam Kamin

  • Affiliations:
  • University of Illinois at Urbana-Champaign;University of Illinois at Urbana-Champaign

  • Venue:
  • Proceedings of the 2009 ACM symposium on Applied Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Code libraries are characterized by feature-richness --- and, consequently, high overhead. The library specialization problem is the problem of obtaining a low-overhead version of library code when the rich feature set is not needed. A version of that problem is this: Given a class with certain core functionality and some "optional" features, how can we offer the client a menu of features such that the specific class answering this request is unencumbered by fields or computation not needed for the requested features? This paper presents a comparative study of several approaches to this version of the library specialization problem. We evaluate object-oriented programming, feature-oriented programming, colored IDE, aspect-oriented programming, C-style preprocessor directives, and fragment-oriented program generation. We find that all of these techniques have shortcomings.