Advances in AOP with AspectC++

  • Authors:
  • Olaf Spinczyk;Daniel Lohmann;Matthias Urban

  • Affiliations:
  • Friedrich-Alexander University Erlangen-Nuremberg;Friedrich-Alexander University Erlangen-Nuremberg;pure::systems GmbH, Magdeburg, Germany

  • Venue:
  • Proceedings of the 2005 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the fourth SoMeT_W05
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Often declared dead or at least dying, C/C++ is still the lingua franca of many application domains. Aspect-Oriented Programming (AOP) is a programming paradigm that supports the modular implementation of crosscutting concerns. Thereby, AOP improves the maintainability, reusability, and configurability of software in general. Although already popular in the Java domain, AOP is still not commonly used in conjunction with C/C++. For a broad adoption of AOP by the software industry, it is crucial to provide solid language and tool support. However, research and tool development for C++ is known to be an extremely hard and tedious task, as the language is overwhelmed with interacting features and hard to analyze. Getting AOP into the C++ domain is not just technical challenge. It is also the question of integrating AOP concepts with the philosophy of the C++ language, which is very different from Java. This paper describes the design and development of the AspectC++ language and weaver, which brings fully-fledged AOP support into the C++ domain.