ABSTRACT
Programming languages provide a limited range of mechanisms to represent concepts. This means that the final program lacks important information that the programmer has about the domain. We propose the use of programmer-extensible program annotations as a means to represent that information about the domain. Using these program annotations we can specify join points by means of semantic properties of the programs, thereby improving the reusability and robustness of aspects.
- J. R. Bachrach and K. Playford. The java syntactic extender (jse). In Proceedings of the OOPSLA 2001 Conference on Object-Oriented Programming, Systems, Languages, and Applications, volume 36 of SIGPLAN Notices, pages 31--42, Tampa Bay, Florida, USA, Oct. 2001. ACM Press. Google ScholarDigital Library
- J. Baker and W. C. Hsieh. Maya: Multiple-dispatch syntax extension in java. In Proceedings of theACM SIGPLAN Conference on Programming Language Design and Implementation, pages 270--281, Berlin, Germany, June 2002. ACM Press. Google ScholarDigital Library
- A. Bryant, A. Catton, K. D. Volder, and G. Murphy. Explicit programming. In Proceedings of the 1st International Conference on Aspect-Oriented Software Development, pages 10--18, Enschede, The Netherlands, Apr. 2002. ACM Press. Google ScholarDigital Library
- K. Czarnecki and U. W. Eisenecker. Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading, Massachusetts, USA, June 2000. Google ScholarDigital Library
- R. E. Filman and D. P. Friedman. Aspect-oriented programming is quantification and obliviousness. In Workshop on Advanced Separation of Concerns, OOPSLA 2000, Minneapolis, Minnesota, USA, Oct. 2000.Google ScholarDigital Library
- G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. An overview of Aspect J. In J. L. Knudsen, editor, Proceedings of the 15th European Conference on Object-Oriented Programming, volume 2072 of Lecture Notes in Computer Science, pages 327--353, Budapest, Hungary, June 2001. Springer-Verlag. Google ScholarDigital Library
- G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In M. Aksit and S. Matsuoka, editors, Proceedings of the 11th European Conference on Object-Oriented Programming, volume 1241 of Lecture Notes in Computer Science, pages 220--242. Springer-Verlag, Jyvskyl, Finland, June 1997.Google Scholar
- G. Kiczales, J. D. Rivieres, and D. Bobrow. The Art of the Metaobject Protocol. MIT Press, Cambridge, MA, USA, 1991. Google ScholarDigital Library
- B. C. Smith. Reflection and semantics in Lisp. In Conference Record of the 11th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages, pages 23--35, Salt Lake City, Utah, USA, Jan. 1984. ACM Press. Google ScholarDigital Library
Recommendations
Preserving the separation of concerns while composing aspects on shared joinpoints
OOPSLA '09: Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applicationsAspect-oriented programming (AOP) is a programming paradigm which makes possible the separation of crosscutting concerns in different modules (the aspects). AOP is known to have issues when aspects are composed in a base program. Several approaches have ...
Preserving the separation of concerns while composing aspects on shared joinpoints
OOPSLA '09: Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applicationsAspect-oriented programming (AOP) is a programming paradigm which makes possible the separation of crosscutting concerns in different modules (the aspects). AOP is known to have issues when aspects are composed in a base program. Several approaches have ...
Toward automated refactoring of crosscutting concerns into aspects
Aspect-oriented programing (AOP) improves the separation of concerns by encapsulating crosscutting concerns into aspects. Thus, aspect-oriented programing aims to better support the evolution of systems. Along this line, we have defined a process that ...
Comments