skip to main content
10.1145/949344.949349acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
Article

XAspects: an extensible system for domain-specific aspect languages

Published:26 October 2003Publication History

ABSTRACT

Current general aspect-oriented programming solutions fall short of helping the problem of separation of concerns for several concern domains. Because of this limitation good solutions for these concern domains do not get used and the opportunity to benefit from separation of these concerns is missed. By using XAspects, a plug-in mechanism for domain-specific aspect languages, separation of concerns can be achieved at a level beyond what is possible for object-oriented programming languages. As a result, XAspects allows for certain domain-specific solutions to be used as easily as a new language feature.

References

  1. XAspects Home Page. http://www.ccs.neu.edu/research/demeter/xaspects. Continuously updated.]]Google ScholarGoogle Scholar
  2. J. Baker and W. C. Hsieh. Maya: Multiple-Dispatch Syntax Extension in Java. In Proceeding of the ACM SIGPLAN 2002 Conference on Programming language design and implementation, pages 270--281. ACM Press, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. D. Batory, D. Brant, M. Gibson, and M. Nolen. ExCIS: An Integration of Domain-Specific Languages and Feature-Oriented Programming. www.isis.vanderbilt.edu/sdp, Nov. 2001.]]Google ScholarGoogle Scholar
  4. D. Batory, B. Lofaso, and Y. Smaragdakis. JTS: tools for implementing domain-specific languages. In Proceedings Fifth International Conference on Software Reuse, pages 143--153, Victoria, BC, Canada, 2--5 1998. IEEE.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. Bryant, A. Catton, K. D. Volder, and G. C. Murphy. Explicit programming. In Proceedings of the 1st international conference on Aspect-oriented software development, pages 10--18. ACM Press, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Clarke, W. Harrison, H. Ossher, and P. Tarr. Subject-oriented design: towards improved alignment of requirements, design, and code. In Proceedings of the 1999 ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, pages 325--339. ACM Press, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. Clifton, G. T. Leavens, C. Chambers, and T. Millstein. MultiJava: Modular Open Classes and Symmetric Multiple Dispatch for Java. In Proceedings of the conference on Object-oriented programming, systems, languages, and applications, pages 130--145. ACM Press, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. K. Czarnecki and U. Eisenecker. Generative Programming: Methods, Tools and Applications. Addison-Wesley, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns---Elements of Reusable Object-Oriented Software. Addison-Wesley Publishing Company, New York, NY, 1994.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. Gray, T. Bapty, S. Neema, and J. Tuck. Handling crosscutting constraints in domain-specific modeling. Communications of the ACM, 44(10):87--93, October 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. J. Hannemann and G. Kiczales. Design Pattern Implementation in Java and AspectJ. In Proceedings of the 17th ACM conference on Object-oriented programming, systems, languages, and applications, pages 161--173. ACM Press, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. W. Harrison and H. Ossher. Subject-oriented programming (A critique of pure objects). In Proceedings OOPSLA '93, ACM SIGPLAN Notices, pages 411--428, Oct. 1993. Published as Proceedings OOPSLA '93, ACM SIGPLAN Notices, volume 28, number 10.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. Hugunin. The Next Steps For Aspect-Oriented Programming Languages. www.isis.vanderbilt.edu/sdp, Nov. 2001.]]Google ScholarGoogle Scholar
  14. K. Lieberherr, D. H. Lorenz, and P. Wu. A Case for Statically Executable Advice: Checking the Law of Demeter With AspectJ. In M. Aksit, editor, Second International Conference on Aspect-Oriented Software Development, Boston, 2003. ACM Press.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. K. J. Lieberherr and B. Patt-Shamir. Traversals of Object Structures: Specification and Efficient Implementation. Technical Report NU-CCS-97-15, College of Computer Science, Northeastern University, Boston, MA, Sep. 1997. http://www.ccs.neu.edu/research/demeter/AP-Library/.]]Google ScholarGoogle Scholar
  16. K. J. Lieberherr, B. Patt-Shamir, and D. Orleans. Traversals of Object Structures: Specification and Efficient Implementation. ACM Trans. Prog. Lang. Syst., 2003. to appear.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. V. Lopes. Graph-based optimizations for parameter passing in remote invocations. In L.-F. Cabrera and M. Theimer, editors, 4th International Workshop on Object Orientation in Operating Systems, pages 179--182, Lund, Sweden, August 1995. IEEE, Computer Society Press.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. C. V. Lopes. D: A Language Framework for Distributed Programming. PhD thesis, Graduate School of the College of Computer Science, Northeastern University, Boston, MA, 1997.]]Google ScholarGoogle Scholar
  19. C. V. Lopes and K. J. Lieberherr. Abstracting process-to-function relations in concurrent object-oriented applications. In R. Pareschi and M. Tokoro, editors, European Conference on Object-Oriented Programming, pages 81--99, Bologna, Italy, 1994. Springer Verlag, Lecture Notes in Computer Science.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. S. Matsuoka, H. Ogawa, K. Shimura, Y. Kimura,\balancecolumns K. Hotta, and H. Takagi. OpenJIT A Reflective Java JIT compiler. In OOPSLA '98, 1998.]]Google ScholarGoogle Scholar
  21. A. Mendhekar, G. Kiczales, and J. Lamping. RG: A Case-Study for Aspect-Oriented Programming. Technical Report SPL97-009, Xerox Palo Alto Research Center, February 1997.]]Google ScholarGoogle Scholar
  22. D. Orleans and K. Lieberherr. AP Library: The Core Algorithms of AP. Technical report, Northeastern University, May 1999. http://www.ccs.neu.edu/research/demeter/AP-Library.]]Google ScholarGoogle Scholar
  23. H. Ossher and P. Tarr. Using multidimensional separation of concerns to (re)shape evolving software. Communications of the ACM, 44(10):43--50, October 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. R. E. Schantz and D. C. Schmidt. Research Advances in Middleware for Distributed Systems: State of the Art. IFIP World Computer Congress, August 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. C. Simonyi. The death of computer languages. Technical report, Mircosoft Research, 1995. ftp://ftp.research.microsoft.com/pub/tech-reports/Summer95/TR-95-52.doc.]]Google ScholarGoogle Scholar
  26. Y. Smaragdakis and D. Batory. DiSTiL: A transformation library for data structures. In Domain-Specific Languages (DSL) Conference, pages 257--270, 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. Sung. Aspectual Concepts. Technical Report NU-CCS-02-06, Northeastern University, June 2002. Master's Thesis, http://www.ccs.neu.edu/home/lieber/theses-index.html.]]Google ScholarGoogle Scholar
  28. P. Tarr, H. Ossher, W. Harrison, and S. M. Sutton. N Degrees of Separation: Multi-Dimensional Separation of Concerns. In International Conference on Software Engineering, pages 107--119, Los Angeles, 1999. ACM.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. N. Wang, D. C. Schmidt, A. Gokhale, C. D. Gill, B. Natarajan, C. Rodrigues, J. Loyall, and R. E. Schantz. Total Quality of Service Provisioning in Middleware and Applications. The Journal of Microprocessors and Microsystems, 26(9--10), March 2003.]]Google ScholarGoogle Scholar
  30. G. Wiederhold and J. Janninck. Composing diverse ontologies. In Proc. 8 th IFIP working group on databases working conference on database semantics, Rotorua(NZ), 1999. http://www-db.stanford.edu/SKC/publications/ifip99.html.]]Google ScholarGoogle Scholar
  31. J. A. Zinky, D. E. Bakken, and R. D. Schantz. Architectural Support for Quality of Service for CORBA Objects. Theory and Practice of Systems, John Wiley and Sons, Inc., 3(1):19 pages, January 1997.]]Google ScholarGoogle Scholar
  32. The AspectJ website. http://www.eclipse.org/aspectj.]]Google ScholarGoogle Scholar
  33. The Concern Manipulation Environment website. http://www.research.ibm.com/cme.]]Google ScholarGoogle Scholar
  34. The DAJ website. http://www.ccs.neu.edu/research/demeter/DAJ.]]Google ScholarGoogle Scholar
  35. The DemeterJ website. http://www.ccs.neu.edu/research/demeter.]]Google ScholarGoogle Scholar
  36. Java Web Services, Sun Microsystems. http://java.sun.com/webservices. Continuously updated.]]Google ScholarGoogle Scholar

Index Terms

  1. XAspects: an extensible system for domain-specific aspect languages

          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

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader