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

Arranging language features for more robust pattern-based crosscuts

Published:17 March 2003Publication History

ABSTRACT

A crosscut language is used to describe at which points an aspect crosscuts a program. An important issue is how these points can be captured using the crosscut language without introducing tight coupling between the aspect and the program. Such tight coupling harms the evolvability of the program and the reusability of the aspect. Current pattern-based capturing already offers a certain decoupling between aspects and the program but it may still suffer from what we call the arranged pattern problem. In this paper, we discuss this problem and present a logic-based crosscut language from which we distill what language features are beneficial to avoid this problem.

References

  1. Johan Brichau, Kim Mens, and Kris De Volder. Building composable aspect-specific languages using logic metaprogramming. In D. Batory, C. Consel, and W. Taha, editors, Proceedings of GPCE Conference, LNCS, pages 110--127. Springer-Verlag, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Johan Brichau, Wolfgang De Meuter, and Kris De Volder. Jumping aspects. In Tarr et al. {32}.]]Google ScholarGoogle Scholar
  3. Yvonne Coady and Gregor Kiczales. Exploring an Aspect-Oriented approach to OS code. In Tarr et al. {31}.]]Google ScholarGoogle Scholar
  4. Rémi Douence, Olivier Motelet, and Mario Südholt. A formal definition of crosscuts. Technical Report 01/3/INFO, Ecole des Mines de Nantes, 2001.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Robert E. Filman. Aspect-oriented programming is quantification and obliviousness. In Tarr et al. {31}.]]Google ScholarGoogle Scholar
  6. Peter Flach. Simply Logical. John Wiley & Sons, 1994.]]Google ScholarGoogle Scholar
  7. Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: elements of reusable Object-Oriented software. Addison-Wesley, 1995.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Adele Goldberg and Dave Robson. Smalltalk-80: the language. Addison-Wesley, 1983.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Kris Gybels. Aspect-Oriented Programming using a Logic Meta Programming language to express cross-cutting through a dynamic joinpoint structure. Licentiate's thesis, Vrije Universiteit Brussel, 2001.]]Google ScholarGoogle Scholar
  10. Jim Hugunin. The next steps for aspect-oriented programming languages (in java). In Workshop on New Visions for Software Design and Productivity: Research and Applications, 2001.]]Google ScholarGoogle Scholar
  11. Neil D. Jones, Carsten K. Gomard, and Peter Sestoft. Partial Evaluation and Automatic Program Generation. Prentice Hall International, 1993.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Mik Kersten and Gail C. Murphy. Atlas: A case study in building a web-based learning environment using aspect-oriented programming. In Proceedings of the ACM Conference on Object-oriented Programming, Systems, Languages, and Applications, pages 340--352. ACM, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William Griswold. Getting started with AspectJ. Communications of the ACM, 44(10):59--65, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William G. Griswold. An overview of AspectJ. In Proceedings of ECOOP 2001, LNCS. Springer-Verlag, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Gregor Kiczales, Jim Hugunin, Mik Kersten, John Lamping, Cristina Lopes, and William G. Griswold. Semantics-based crosscutting in aspectj. In Peri Tarr, Anthony Finkelstein, William Harrison, Bashar Nuseibeh, Harold Ossher, and Dewayne Perry, editors, Workshop on Multi-Dimensional Separation of Concerns in Software Engineering at ICSE 2000, 2000.]]Google ScholarGoogle Scholar
  16. Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Proceedings of the European conference on Object-Oriented Programming. Springer-Verlag, jun 1997.]]Google ScholarGoogle ScholarCross RefCross Ref
  17. Martin Lippert and Cristina Videira Lopes. A study on exception detection and handling using aspect-oriented programming. In Proceedings of the 22nd International Conference on Software Engineering. ACM Press, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Cristina Lopes, Gregor Kiczales, Bedir Tekinerdogan, and Wolfgang de Meuter, editors. International Workshop on Aspect-Oriented Programming at ECOOP, 1998.]]Google ScholarGoogle Scholar
  19. Cristina Videira Lopes. D: A language framework for distributed programming. Technical Report SPL97-010, P9710047, Xerox PARC, 1997.]]Google ScholarGoogle Scholar
  20. Cristina Videira Lopes. Recent developments in AspectJ. In Lopes et al. {18}.]]Google ScholarGoogle Scholar
  21. Hidehiko Masuhara, Gregor Kiczales, and Chris Dutchyn. Compilation semantics of aspect-oriented programs. In Gary T. Leavens and Ron Cytron, editors, Foundations of Aspect-Oriented Languages Workshop at AOSD 2002, number 02--06 in Tech Report, pages 17--26. Department of Computer Science, Iowa State University, 2002.]]Google ScholarGoogle Scholar
  22. Anurag Mendhekar, Gregor Kiczales, and John Lamping. RG: A case study for Aspect-Oriented Programming. Technical Report SPL97-009 P9710044, Xerox Palo Alto Research Center, 1997.]]Google ScholarGoogle Scholar
  23. Kim Mens, Isabel Michiels, and Roel Wuyts. Supporting software development through declaratively codified programming patterns. In Proceedings of the 13th SEKE Conference, pages 236--243. Knowledge Systems Institute, 2001.]]Google ScholarGoogle Scholar
  24. Naftaly Minsky. Law-governed regularities in object systems. Theory and Practice of Object Systems (TOPAS) (John Wiley), 2(4), 1996.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Doug Orleans and Karl Lieberherr. Dj: Dynamic adaptive programming in java. In Reflection 2001: Meta-level Architectures and Separation of Crosscutting Concerns, Kyoto, Japan, September 2001. Springer Verlag. 8 pages.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Harold Ossher and Peri L. Tarr. Hyper/J: multi-dimensional separation of concerns for Java. In Proceedings of ICSE 2000, pages 734--737, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Renaud Pawlak, Lionel Seinturier, Laurence Duchien, and Gerard Florin. Jac: A flexible and efficient solution for aspect-oriented programming in java. In Reflection 2001: Meta-level Architectures and Separation off Crosscutting Concerns, Kyoto, Japan, September 2001. Springer Verlag.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Andrei Popovici, Thomas Gross, and Gustavo Alonso. Dynamic weaving for Aspect-Oriented Programming. In Gregor Kiczales, editor, 1st international conference on Aspect-Oriented Software Development, april 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Andreas Speck, Elke Pulvemüller, and Mira Mezini. Reusability of concerns. In Tarr et al. {32}.]]Google ScholarGoogle Scholar
  30. Mario Südholt and Pascal Fradet. Aop: towards a generic framework using program transformation and analysis. In Lopes et al. {18}.]]Google ScholarGoogle Scholar
  31. Peri Tarr, Lodewijk Bergmans, Martin Griss, and Harold Ossher, editors. Proceedings of the Workshop on Advanced Separation of Concerns at OOPSLA 2000, 2000.]]Google ScholarGoogle Scholar
  32. Peri Tarr, Maja D'Hondt, Christina Lopes, and Lodewijk Bergmans, editors. International Workshop on Aspects and Dimensional Computing at ECOOP, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Kris De Volder. Aspect-Oriented Logic Meta Programming. In Proceedings of the Second International Conference on Metalevel Architectures and Reflection, volume 1616 of Lecture Notes in Computer Science. Springer-Verlag, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Detlef Vollmann. Visibility of join-points in AOP and implementation languages. In Pascal Constanza, Gunther Kniesel, Katharina Mehner, Elke Pulvermuller, and Andreas Speck, editors, Second Workshop on Aspect-Oriented Software Development, 2002.]]Google ScholarGoogle Scholar
  35. Roel Wuyts. Declarative reasoning about the structure of object-oriented systems. In Proceedings of TOOLS-USA '98, 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Arranging language features for more robust pattern-based crosscuts

        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 '03: Proceedings of the 2nd international conference on Aspect-oriented software development
          March 2003
          206 pages
          ISBN:1581136609
          DOI:10.1145/643603

          Copyright © 2003 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: 17 March 2003

          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