skip to main content
10.1145/1233843.1233846acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

Join point selectors

Published: 12 March 2007 Publication History

Abstract

One of the main issues in modern aspect-oriented programming languages and frameworks is the expressiveness of the pointcut language or mechanism. The expressiveness of pointcut languages directly impacts pointcut quality, a property that can be decisive for the effectiveness of aspect implementations. In this paper we propose join point selectors as a simple extension mechanism for enriching current pointcut languages with constructs that play the role of "new primitive pointcuts". Join point selectors allow the creation of pointcuts with greater semantic value. Although similar mechanisms can be found in some existing approaches, the underlying concept has not yet been clearly defined nor fully explored. We present a simple architecture for adding join point selectors to an existing aspect-oriented framework. We show examples of usage of join point selectors to enhance the quality of pointcuts and make aspect development easier. We also show how join point selectors can be used as framework-specific selectors, which allow aspects to cross the boundary of a given framework while still respecting the modularity of that framework.

References

[1]
Christian Bauer and Gavin King. Hibernate in Action. Manning, 2005.
[2]
Johan Brichau and Michael Haupt. Survey of aspect-oriented languages and execution models. Technical Report AOSD-Europe-VUB-01, AOSD-Europe, May 2005.
[3]
Shigeru Chiba. Load-time structural reflection in java. In Elisa Bertino, editor, ECOOP, volume 1850 of Lecture Notes in Computer Science, pages 313--336. Springer, 2000.
[4]
Shigeru Chiba and Kiyoshi Nakagawa. Josh: an open AspectJ-like language. In Lieberherr {17}, pages 102--111.
[5]
Michael Eichberg, Mira Mezini, and Klaus Ostermann. Pointcuts as functional queries. In Wei-Ngan Chin, editor, APLAS, volume 3302 of Lecture Notes in Computer Science, pages 366--381. Springer, 2004.
[6]
K. Gybels. Using a logic language to express cross-cutting through dynamic joinpoints. In Pascal Costanza, Günter Kniesel, Katharina Mehner, Elke Pulvermüller, and Andreas Speck, editors, Second Workshop on Aspect-Oriented Software Development of the German Information Society. Institut für Informatik III, Universität Bonn, February 2002. Technical report IAI-TR-2002-1.
[7]
Kris Gybels and Johan Brichau. Arranging language features for pattern-based crosscuts. In Mehmet Akşit, editor, Proc. 2nd Int' Conf. on Aspect-Oriented Software Development (AOSD-2003), pages 60--69. ACM Press, March 2003.
[8]
Erik Hilsdale and Jim Hugunin. Advice weaving in AspectJ. In Lieberherr {17}, pages 26--35.
[9]
JBoss Inc. JBoss AOP Reference Documentation.
[10]
Rod Johnson, Juergen Hoeller, Alef Arendsen, Colin Sampaleanu, Rob Harrop, Thomas Risberg, Darren Davison, Dmitriy Kopylenko, Mark Pollack, Thierry Templier, and Erwin Vervaet. Spring -- Java/J2EE Application Framework Reference Documentation.
[11]
G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. An overview of AspectJ. In J. L. Knudsen, editor, Proc. ECOOP 2001, LNCS 2072, pages 327--353, Berlin, June 2001. Springer-Verlag.
[12]
Gregor Kiczales. The fun has just begun. keynote. In AOSD 2003, Boston, March 2003.
[13]
Mik Kirsten. Aop@work: Aop tools comparison, part 1: Language mechanisms. Technical report, IBM Developer Works, February 2005.
[14]
Karl Klose and Klaus Ostermann. Back to the future: Pointcuts as predicates over traces. In Leavens et al. {16}.
[15]
Christian Koppen and Maximilian Störzer. PCDiff: Attacking the fragile pointcut problem. In Kris Gybels, Stefan Hanenberg, Stephan Herrmann, and Jan Wloka, editors, European Interactive Workshop on Aspects in Software (EIWAS), September 2004.
[16]
Gary T. Leavens, Curtis Clifton, and Ralf Lämmel, editors. Foundations of Aspect-Oriented Languages, March 2005.
[17]
Karl Lieberherr, editor. Proc. 3rd Int' Conf. on Aspect-Oriented Software Development (AOSD-2004). ACM Press, March 2004.
[18]
Karl J. Lieberherr, Jeffrey Palm, and Ravi Sundaram. Expressiveness and complexity of crosscut languages. In Leavens et al. {16}.
[19]
Klaus Ostermann, Mira Mezini, and Christoph Bockisch. Expressive pointcuts for increased modularity. In Andrew P. Black, editor, ECOOP, volume 3586 of Lecture Notes in Computer Science, pages 214--240. Springer, 2005.
[20]
Apache Struts Project. http://struts.apache.org/.
[21]
AspectWerkz Project. http://aspectwerkz.codehaus.org/.
[22]
Dominik Stein, Stefan Hanenberg, and Rainer Unland. An UMLbased aspect-oriented design notation. In Gregor Kiczales, editor, Proc. 1st Int' Conf. on Aspect-Oriented Software Development (AOSD-2002), pages 106--112. ACM Press, April 2002.
[23]
M. Wand, G. Kiczales, and C. Dutchyn. A semantics for advice and dynamic join points in aspect-oriented programming. ACM Transactions on Programming Languages and Systems, 26(5):890--910, September 2004.
[24]
Eric Wohlstadter and Kris De Volder. Doxpects: aspects supporting xml transformation interfaces. In AOSD '06: Proceedings of the 5th international conference on Aspect-oriented software development, pages 99--108, New York, NY, USA, 2006. ACM Press.

Cited By

View all
  • (2010)Browser-based Analysis of Web Framework ApplicationsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.35.535(51-62)Online publication date: 17-Sep-2010
  • (2009)Enabling the adoption of aspects - testing aspectsProceedings of the 8th ACM international conference on Aspect-oriented software development10.1145/1509239.1509266(197-206)Online publication date: 2-Mar-2009
  • (2009)Extending AOP with modelsProceedings of the 2nd India software engineering conference10.1145/1506216.1506220(13-18)Online publication date: 23-Feb-2009

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SPLAT '07: Proceedings of the 5th workshop on Software engineering properties of languages and aspect technologies
March 2007
63 pages
ISBN:9781595936561
DOI:10.1145/1233843
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]

Sponsors

  • AOSD-Europe: European Network of Excellent on Aspect-oriented Software Development

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 March 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. AOP
  2. aspect-oriented programming
  3. extensibility
  4. join point selectors
  5. pointcut languages
  6. semantic pointcuts

Qualifiers

  • Article

Conference

AOSD07
Sponsor:
  • AOSD-Europe
AOSD07: 6th International Conference on Aspect-Oriented Software Development
March 12 - 16, 2007
British Columbia, Vancouver, Canada

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 17 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2010)Browser-based Analysis of Web Framework ApplicationsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.35.535(51-62)Online publication date: 17-Sep-2010
  • (2009)Enabling the adoption of aspects - testing aspectsProceedings of the 8th ACM international conference on Aspect-oriented software development10.1145/1509239.1509266(197-206)Online publication date: 2-Mar-2009
  • (2009)Extending AOP with modelsProceedings of the 2nd India software engineering conference10.1145/1506216.1506220(13-18)Online publication date: 23-Feb-2009

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media