ABSTRACT
This paper makes two contributions: a generalization of AspectJ-like languages with first-class aspect instances and instance-level advising, and a mapping of the mediator style for integrated system design into this space. We present Eos as a prototype language design and implementation. It extends C# with AspectJ-like constructs, first-class aspect instances and instance-level advising. These features enable a direct mapping of mediators to aspect instances, with modularity improved, insofar as components need not declare, announce, or register for events.
- Andrade, L., and Fiadeiro, J.,"Coordination Technologies for Managing Information System Evolution", Proceedings of CAiSE'01, K.Dittrich, A.Geppert and M.Norrie (eds), LNCS 2068, Springer-Verlag 2001, 374--387. Google ScholarDigital Library
- AOP#: under development at Siemens Corporation. [email protected] mailto:[email protected].Google Scholar
- AspectC++, http://www.aspectc.org.Google Scholar
- AspectR: "Simple Aspect Oriented Programming in Ruby," http://aspectr.sourceforge.net/Google Scholar
- Aksit, M., Wakita, K., Bosch, J., Bergmans, L., Yonezawa, A., "Abstracting Object Interactions Using Composition Filters," Proceedings of the ECOOP'93 Workshop on Object-Based Distributed Programming, 1993. Google ScholarDigital Library
- Andersen, E. (Egil), Conceptual Modelling of Objects: A Role Modelling Approach, PhD Thesis, University of Oslo, 1997.Google Scholar
- AspectBrowser: http://www-cse.ucsd.edu/users/wgg/swevolution.htmlGoogle Scholar
- AspectJ: www.eclipse.org/AspectJGoogle Scholar
- AspectJ mailing list archives: http://www.eclipse.org/AspectJGoogle Scholar
- Bergmans, L., "The Composition Filters Object Model," Dept. of Computer Science, University of Twente, 1994.Google Scholar
- Constantinides, C., A., and Elrad, T., "Composing Concerns with a Framework Approach," Proc. 2nd Int'l Workshop on Aspect Oriented Programming for Distributed Computing Systems (ICDCS-2002), Vol. 2, July, 2002, Vienna pp. 133--140. Google ScholarDigital Library
- Dechow, D., Ph.D Dissertation Proposal, http://cs.oregonstate.edu/~dechowGoogle Scholar
- Douence, R., and Sadholt, M., "A model and a tool for Event-based Aspect-Oriented Programming (EAOP)", TR 02/11/INFO, Ecole des Mines de Nantes, french version accepted at LMO'03, 2nd edition, Dec. 2002.Google Scholar
- Filman, R. E., Barrett, S., Lee, D. D. and Linden, T., "Inserting Ilities by Controlling Communications ", Communications of ACM, vol. 45, number 1, Jan, 2002, pp. 116--122. Google ScholarDigital Library
- Garlan, D., and Notkin, D., "Formalizing Design Spaces: Implicit Invocation Mechanisms". VDM '91: Formal Software Development Methods, pp. 31--44 (October 1991). Google ScholarDigital Library
- Gottlob, G., Schrefl, M., and Rock, B., "Extending Object Oriented Systems with Roles," ACM Trans on Info. Sys., Vol. 14, No. 3, July, 1996, pp. 268--296. Google ScholarDigital Library
- Hirschfeld, R., "AspectS -- Aspects in Squeak", ECOOP'2002 Workshop on Generative Programming, Jun 2002.Google Scholar
- Java: www.java.sun.comGoogle Scholar
- Kalet, I.J., J.P. Jacky, M.M Austin-Seymour, S.M. Hummel, K.J. Sullivan and J.M. Unger, "Prism: a New Approach to Radiotherapy Planning Software," International Journal of Radiation Oncology, Biology and Physics, 36, 2, 1996, pp. 451--461.Google ScholarCross Ref
- Kendall, E. A., "Aspect Oriented Programming for Role Models," International Workshop on Aspect Oriented Programming, European Conference on Object Oriented Programming (ECOOP'99), Lisbon, June, 1999. Google ScholarDigital Library
- Kendall, E. A., "Aspect-oriented Programming in AspectJ," Evolve 2000, Sydney, March, 2000.Google Scholar
- Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J. and Irwin, J., "Aspect-oriented programming," in Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Springer-Verlang, Lecture Notes on Computer Science 1241, June 1997.Google Scholar
- Kim, H., "AspectC#: An AOSD implementation for C#," Technical Report TCD-CS-2002-55, Department of Computer Science, Trinity College, Dublin, 2002.Google Scholar
- Koopmans, P.S., "Sina/St: User's Guide and Reference Manual," TRESE project, University of Twente, 1996.Google Scholar
- Kristensen, B. B., "Object-oriented Modelling with Roles," OOIS'95, Proceedings of the 2nd International Conference on Object-oriented Information Systems, Dublin, Ireland, 1996.Google Scholar
- Lam, J., "CLAW" URL: www.iunknown.com.Google Scholar
- Marshall, J., Orleans, D., and Lieberherr, K., "DJ: Dynamic Structure-Shy Traversal in Pure JAVA," Technical Report, Northeastern University, May 1999.Google Scholar
- Microsoft. C# Specification Homepage. http://msdn.microsoft.com/net/ecma/.Google Scholar
- Microsoft Aspect.Net project description. http://research.microsoft.com/programs/europe/rotor/Projects.asp.Google Scholar
- Microsoft .Net Framework Developers Guide available at http://msdn.microsoft.com.Google Scholar
- Sullivan, K., "Mediators: Easing the Design and Evolution of Integrated Systems", Ph.D. dissertation, University of Washington, 1994. Google ScholarDigital Library
- Sullivan, K. and Notkin, D., "Reconciling environment integration and software evolution," ACM Transactions on Software Engineering and Methodology 1, 3, July 1992, pp. 229--268 (short form: Proceedings of the 4th SIGSOFT Symposium on Software Development Environments, 1990, pp. 22--33). Google ScholarDigital Library
- Sullivan, K., Gu, L., Cai, Y., "Non-modularity in Aspect-Oriented Languages: Integration as a Crosscutting Concern for AspectJ," Proceedings of Aspect-Oriented Software Design, 2002. Google ScholarDigital Library
- Sullivan, K., Kalet, I., Notkin, D., " Evaluating the mediator method: Prism as a case study," IEEE Transactions on Software Engineering, Vol. 22, No. 8, August 1996. Google ScholarDigital Library
- Tarr, P. and Ossher, H., "Hyper/J User and Installation Manual", IBM CorporationGoogle Scholar
Index Terms
- Eos: instance-level aspects for integrated system design
Recommendations
Eos: instance-level aspects for integrated system design
This paper makes two contributions: a generalization of AspectJ-like languages with first-class aspect instances and instance-level advising, and a mapping of the mediator style for integrated system design into this space. We present Eos as a prototype ...
Aspect-oriented programming
ESEC/FSE-9: Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineeringAspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use ...
Aspect-oriented programming
Aspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use ...
Comments