2007
DOI: 10.1016/j.knosys.2007.05.004
|View full text |Cite
|
Sign up to set email alerts
|

The design and implementation of AspectC++

Abstract: 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 extremel… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
29
0

Year Published

2007
2007
2024
2024

Publication Types

Select...
4
4
2

Relationship

5
5

Authors

Journals

citations
Cited by 51 publications
(30 citation statements)
references
References 16 publications
1
29
0
Order By: Relevance
“…The generated CiAO configuration is used by CiAO's configuration tool to generate a CiAO variant tailored to the feature requirements of the applications at hand. The implementation language of CiAO is AspectC++ [15]. The AspectC++ weaver performs a sourceto-source translation of both the OS and the application code to apply the advice given by the aspects in the generated CiAO variant.…”
Section: Methodsmentioning
confidence: 99%
“…The generated CiAO configuration is used by CiAO's configuration tool to generate a CiAO variant tailored to the feature requirements of the applications at hand. The implementation language of CiAO is AspectC++ [15]. The AspectC++ weaver performs a sourceto-source translation of both the OS and the application code to apply the advice given by the aspects in the generated CiAO variant.…”
Section: Methodsmentioning
confidence: 99%
“…Besides this adaptation mechanism, aspect-oriented languages typically also provide an introspection mechanism, which allows the programmer of the rules to write generic actions that may depend on the target program's structure. Aspect-oriented language extensions are, for instance, available for Java (AspectJ [20]) and C++ (AspectC++ [21]). The latter is strongly focused on compile-time code adaptation and can exploit the C++ template mechanism for powerful code synthesis.…”
Section: B Exploiting Features Of Aspect-oriented Programmingmentioning
confidence: 99%
“…AspectC++ [15] adds full-blown AOP support to the C++ language, including support for templates and non-OO programming. Contrary to our approach, the authors explicitly state as one of their goals to "not make any compromise regarding obliviousness and quantification", i.e.…”
Section: Related Workmentioning
confidence: 99%