AWESOME: An aspect co-weaving system for composing multiple aspect-oriented extensions

Sergei Kojarski, David H. Lorenz

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Domain specific aspect-oriented language extensions offer unique capabilities to deal with a variety of crosscutting concerns. Ideally, one should be able to use several of these extensions together in a single program. Unfortunately, each extension generally implements its own specialized weaver and the different weavers are incompatible. Even if the weavers were compatible, combining them is a difficult problem to solve in general, because each extension defines its own language with new semantics. In this paper we present a practical composition framework, named AWESOME, for constructing a multi-extension weaver by plugging together independently developed aspect mechanisms. The framework has a component-based and aspect-oriented architecture that facilitates the development and integration of aspect weavers. To be scalable, the framework provides a default resolution of feature interactions in the composition. To be general, the framework provides means for customizing the composition behavior. Furthermore, to be practically useful, there is no framework-associated overhead on the runtime performance of compiled aspect programs. To illustrate the AWESOME framework concretely, we demonstrate the construction of a weaver for a multi-extension AOP language that combines COOL and Aspect J. However, the composition method is not exclusive to COOL and AspectJ - it can be applied to combine any comparable reactive aspect mechanisms.

Original languageEnglish
Title of host publicationProceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA'07)
Pages515-534
Number of pages20
Volume42
Edition10
DOIs
StatePublished - Oct 2007
EventOOPSLA 2007: 22nd International Conference on Object-Oriented Programming, Systems, Languages, and Applications - Montreal, QC, Canada
Duration: 21 Oct 200725 Oct 2007

Publication series

NameACM SIGPLAN Notices
PublisherAssociation for Computing Machinery (ACM)
ISSN (Print)1523-2867

Conference

ConferenceOOPSLA 2007: 22nd International Conference on Object-Oriented Programming, Systems, Languages, and Applications
Country/TerritoryCanada
CityMontreal, QC
Period21/10/0725/10/07

Keywords

  • Aop
  • Aspect extension
  • Aspect mechanism
  • Aspect weaver
  • Composition
  • DSL
  • Framework
  • Pluggability

Fingerprint

Dive into the research topics of 'AWESOME: An aspect co-weaving system for composing multiple aspect-oriented extensions'. Together they form a unique fingerprint.

Cite this