skip to main content
10.1145/976270.976275acmconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

Association aspects

Published:22 March 2004Publication History

ABSTRACT

We propose a linguistic mechanism for AspectJ-like languages that concisely associates aspect instances to object groups. The mechanism, which supports association aspects, extends the per-object aspects in AspectJ by allowing an aspect instance to be associated to a group of objects, and by providing a new pointcut primitive to specify aspect instances as execution contexts of advice. With association aspects, we can straightforwardly implement crosscutting concerns that have stateful behavior related to a particular group of objects. The new pointcut primitive can more flexibly specify aspect instances when compared against previous implicit mechanisms. The comparison of execution times between the programs with association aspects and the ones with regular AspectJ aspects revealed that the association aspects exhibited almost equivalent for the medium-sized configurations.

References

  1. M. Aksit, ed. Proc. of AOSD'03. 2003.Google ScholarGoogle Scholar
  2. J. Baker and W. Hsieh. Runtime aspect weaving through metaprogramming. In {9}, pp. 86--98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. J. Bonér and A. Vasseur. AspectWerkz. http://aspectwerkz.codehaus.org/.Google ScholarGoogle Scholar
  4. B. Burke and A. Brok. Aspect-oriented programming and JBoss. O'Reilly Network, May 2003. http://www.oreillynet, com/pub/a/onjava/2003/05/28/aop_jboss, html.Google ScholarGoogle Scholar
  5. E. Gamma, R. Helm, l:t. Johnson, and J. Vlissides. Design Patterns. Addison-Wesley, 1995.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. J. Hannemann and G. Kiczales. Design pattern implementation in Java and AspectJ. In {12}, pp. 161--173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. E. A. Kendall. Role model designs and implementations with aspect-oriented programming. In {15}, pp. 353--369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Kersten and G. C. Murphy. Atlas: A case study in building a web-based learning environment using aspect-oriented programming. In {15}, pp. 340--352. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. G. Kiczales, ed. Proc. of AOSD'02. 2002.Google ScholarGoogle Scholar
  10. G. Kiczales, et al. An overview of AspectJ. In ECOOP 2001, pp. 327--353, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. H. Masuhara, G. Kiczales, and C. Dutchyn. A compilation and optimization model for aspect-oriented programs. In Proc. of Compiler Construction (CC2003), pp. 46--60, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S. Matsuoka, ed. Proc. of OOPSLA2002. Nov. 2002.Google ScholarGoogle Scholar
  13. M. Mezini and K. Ostermann. Integrating independent components with on-demand remodularization. In {12}, pp. 52--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Mezini and K. Ostermann. Conquering aspects with Caesar. In {1}. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. L. M. Northrop, ed. Proc. of OOPSLA'99. Oct. 1999.Google ScholarGoogle Scholar
  16. H. Ossher and P. Tarr. Multi-dimensional Separation of concerns and the hyperspace approach. In Proc. of the Symposium on Software Architectures and Component Technology. 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. Popovici, G. Alonso, and T. Gross. Just-in-time aspects: efficient dynamic weaving for Java. In {1}, pp. 100--109. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Popovici, T. Gross, and G. Alonso. Dynamic weaving for aspect-oriented programming. In {9}, pp. 141--147. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. H. Rajan and K. Sullivan. Eos: Instance-level aspects for integrated system design. In Proc. of ESEC/FSE, pp. 297--306, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. K. Sullivan. Mediators: Easing the design and evolution of integrated systems. PhD Thesis, Dept. of Computer Science, University of Washington, published as TR UW-CSE-94-08-01, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. K. Sullivan, L. Gu, and Y. Cai. Non-modularity in aspect-oriented languages. In {9}, pp. 19--27, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. K. Sullivan and D. Notkin. Reconciling environment integration and software evolution. ACM TOSEM, 1(3):229--268, July 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    AOSD '04: Proceedings of the 3rd international conference on Aspect-oriented software development
    March 2004
    161 pages
    ISBN:1581138423
    DOI:10.1145/976270

    Copyright © 2004 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 22 March 2004

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    Overall Acceptance Rate41of139submissions,29%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader