Details
Original language | English |
---|---|
Title of host publication | New Trends in Software Methodologies, Tools and Techniques |
Publisher | IOS Press |
Pages | 165-186 |
Number of pages | 22 |
ISBN (print) | 9781607500490 |
Publication status | Published - 2009 |
Externally published | Yes |
Publication series
Name | Frontiers in Artificial Intelligence and Applications |
---|---|
Number | 1 |
Volume | 199 |
ISSN (Print) | 0922-6389 |
Abstract
In theory, the expressive power of an aspect language should be independent of the aspect deployment approach, whether it is static or dynamic weaving. However, in the area of strictly statically typed and compiled languages, such as C or C++, there seems to be a feedback from the weaver implementation to the language level: dynamic aspect languages offer noticeable fewer features than their static counterparts. Especially means for generic aspect implementations are missing, as they are very difficult to implement in dynamic weavers. This hinders reusability of aspects and the application of AOP to scenarios where both, runtime and compile-time adaptation is required. Our solution to overcome these limitations is based on a novel combination of static and dynamic weaving techniques, which facilitates the support of typical static language features, such as generic advice, in dynamic weavers for compiled languages. In our implementation, the same AspectC++ aspect code can now be woven statically or dynamically into the Squid web proxy, providing flexibility and best of bread for many AOP-based adaptation scenarios.
Keywords
- AOP, Programming Languages
ASJC Scopus subject areas
- Computer Science(all)
- Artificial Intelligence
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
New Trends in Software Methodologies, Tools and Techniques. 1. ed. IOS Press, 2009. p. 165-186 (Frontiers in Artificial Intelligence and Applications; Vol. 199, No. 1).
Research output: Chapter in book/report/conference proceeding › Conference contribution › Research › peer review
}
TY - GEN
T1 - Dynamic AspectC++: Generic Advice at Any Time
AU - Tartler, Reinhard
AU - Lohmann, Daniel
AU - Schröder-Preikschat, Wolfgang
AU - Spinczyk, Olaf
PY - 2009
Y1 - 2009
N2 - In theory, the expressive power of an aspect language should be independent of the aspect deployment approach, whether it is static or dynamic weaving. However, in the area of strictly statically typed and compiled languages, such as C or C++, there seems to be a feedback from the weaver implementation to the language level: dynamic aspect languages offer noticeable fewer features than their static counterparts. Especially means for generic aspect implementations are missing, as they are very difficult to implement in dynamic weavers. This hinders reusability of aspects and the application of AOP to scenarios where both, runtime and compile-time adaptation is required. Our solution to overcome these limitations is based on a novel combination of static and dynamic weaving techniques, which facilitates the support of typical static language features, such as generic advice, in dynamic weavers for compiled languages. In our implementation, the same AspectC++ aspect code can now be woven statically or dynamically into the Squid web proxy, providing flexibility and best of bread for many AOP-based adaptation scenarios.
AB - In theory, the expressive power of an aspect language should be independent of the aspect deployment approach, whether it is static or dynamic weaving. However, in the area of strictly statically typed and compiled languages, such as C or C++, there seems to be a feedback from the weaver implementation to the language level: dynamic aspect languages offer noticeable fewer features than their static counterparts. Especially means for generic aspect implementations are missing, as they are very difficult to implement in dynamic weavers. This hinders reusability of aspects and the application of AOP to scenarios where both, runtime and compile-time adaptation is required. Our solution to overcome these limitations is based on a novel combination of static and dynamic weaving techniques, which facilitates the support of typical static language features, such as generic advice, in dynamic weavers for compiled languages. In our implementation, the same AspectC++ aspect code can now be woven statically or dynamically into the Squid web proxy, providing flexibility and best of bread for many AOP-based adaptation scenarios.
KW - AOP
KW - Programming Languages
UR - http://www.scopus.com/inward/record.url?scp=72949112197&partnerID=8YFLogxK
U2 - 10.3233/978-1-60750-049-0-165
DO - 10.3233/978-1-60750-049-0-165
M3 - Conference contribution
AN - SCOPUS:72949112197
SN - 9781607500490
T3 - Frontiers in Artificial Intelligence and Applications
SP - 165
EP - 186
BT - New Trends in Software Methodologies, Tools and Techniques
PB - IOS Press
ER -