ABSTRACT
Aspect-oriented (AO) methods and languages seek to enable the preservation of design modularity through mappings to program structures, especially where common (object-oriented) languages fail to do so. The general claim is made that AO approaches enable the modularization of crosscutting concerns. The problem that we address is that it is unclear to what extent such claims are valid. We argue that there are meaningful bounds on the abilities of past, present, and future languages to succeed in this regard---bounds that we need to understand better. To make this idea concrete we exhibit a significant bound: Component integration (Sullivan & Notkin 1992, 1994) is not adequately modularizable in AspectJ
- Xerox Corporation, AspectJ Team, The AspectJ Programming Guide, 2001, available at URL http://www.aspectj.org/ as of this writing.Google Scholar
- Elrad, T., R. E. Filman and A. Bader, guest editors, Communications of the ACM 44, 10, Special Issue on Aspect-Oriented Programming, October 2001. Google ScholarDigital Library
- Gamma, Helm, Johnson and Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994. Google ScholarDigital Library
- Kalet, I. J., J. P. Jacky, M.M Austin-Seymour, S. M. Hummel, K. J. Sullivan and J. M. Unger, "Prism: a New Approach toGoogle Scholar
Index Terms
- Non-modularity in aspect-oriented languages: integration as a crosscutting concern for AspectJ
Recommendations
An object-oriented framework for aspect-oriented languages
AOSD '12: Proceedings of the 11th annual international conference on Aspect-oriented Software DevelopmentAspect-orientation is a mechanism for modularizing cross-cutting concerns that has been added to many existing software engineering languages. The implementations of aspect-oriented language extensions, however, are typically tied to a specific base ...
Aspect-Oriented workflow languages
ODBASE'06/OTM'06: Proceedings of the 2006 Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, DOA, GADA, and ODBASE - Volume Part IMost available aspect-oriented languages today are extensions to programming languages However, aspect-orientation, which is a paradigm for decomposition and modularization, is not only applicable in that context In this paper, we introduce aspect-...
Incremental aspect weaving: an approach for faster AOP learning
SAC '15: Proceedings of the 30th Annual ACM Symposium on Applied ComputingAspect oriented programming (AOP) is a programming paradigm that provides mechanisms for encapsulating cross-cutting concerns. Developers who want to learn AOP often experiment with aspects and different Pointcuts on their existing code bases to try and ...
Comments