Loading [MathJax]/extensions/tex2jax.js

Dynamic AspectC++: Generic Advice at Any Time

Research output: Chapter in book/report/conference proceedingConference contributionResearchpeer review

Authors

  • Reinhard Tartler
  • Daniel Lohmann
  • Wolfgang Schröder-Preikschat
  • Olaf Spinczyk

External Research Organisations

  • Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU Erlangen-Nürnberg)
  • TU Dortmund University
Plum Print visual indicator of research metrics
  • Citations
    • Citation Indexes: 3
  • Captures
    • Readers: 7
see details

Details

Original languageEnglish
Title of host publicationNew Trends in Software Methodologies, Tools and Techniques
PublisherIOS Press
Pages165-186
Number of pages22
ISBN (print)9781607500490
Publication statusPublished - 2009
Externally publishedYes

Publication series

NameFrontiers in Artificial Intelligence and Applications
Number1
Volume199
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

Cite this

Dynamic AspectC++: Generic Advice at Any Time. / Tartler, Reinhard; Lohmann, Daniel; Schröder-Preikschat, Wolfgang et al.
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 proceedingConference contributionResearchpeer review

Tartler, R, Lohmann, D, Schröder-Preikschat, W & Spinczyk, O 2009, Dynamic AspectC++: Generic Advice at Any Time. in New Trends in Software Methodologies, Tools and Techniques. 1 edn, Frontiers in Artificial Intelligence and Applications, no. 1, vol. 199, IOS Press, pp. 165-186. https://doi.org/10.3233/978-1-60750-049-0-165
Tartler, R., Lohmann, D., Schröder-Preikschat, W., & Spinczyk, O. (2009). Dynamic AspectC++: Generic Advice at Any Time. In New Trends in Software Methodologies, Tools and Techniques (1 ed., pp. 165-186). (Frontiers in Artificial Intelligence and Applications; Vol. 199, No. 1). IOS Press. https://doi.org/10.3233/978-1-60750-049-0-165
Tartler R, Lohmann D, Schröder-Preikschat W, Spinczyk O. Dynamic AspectC++: Generic Advice at Any Time. In New Trends in Software Methodologies, Tools and Techniques. 1 ed. IOS Press. 2009. p. 165-186. (Frontiers in Artificial Intelligence and Applications; 1). doi: 10.3233/978-1-60750-049-0-165
Tartler, Reinhard ; Lohmann, Daniel ; Schröder-Preikschat, Wolfgang et al. / Dynamic AspectC++: Generic Advice at Any Time. New Trends in Software Methodologies, Tools and Techniques. 1. ed. IOS Press, 2009. pp. 165-186 (Frontiers in Artificial Intelligence and Applications; 1).
Download
@inproceedings{d27184c667c54dca873c0b936942575f,
title = "Dynamic AspectC++: Generic Advice at Any Time",
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",
author = "Reinhard Tartler and Daniel Lohmann and Wolfgang Schr{\"o}der-Preikschat and Olaf Spinczyk",
year = "2009",
doi = "10.3233/978-1-60750-049-0-165",
language = "English",
isbn = "9781607500490",
series = "Frontiers in Artificial Intelligence and Applications",
publisher = "IOS Press",
number = "1",
pages = "165--186",
booktitle = "New Trends in Software Methodologies, Tools and Techniques",
address = "Netherlands",
edition = "1",

}

Download

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 -