{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,9]],"date-time":"2026-06-09T14:54:25Z","timestamp":1781016865418,"version":"3.54.1"},"publisher-location":"Berlin, Heidelberg","reference-count":38,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540422068","type":"print"},{"value":"9783540453376","type":"electronic"}],"license":[{"start":{"date-parts":[[2001,1,1]],"date-time":"2001-01-01T00:00:00Z","timestamp":978307200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2001,1,1]],"date-time":"2001-01-01T00:00:00Z","timestamp":978307200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2001]]},"DOI":"10.1007\/3-540-45337-7_18","type":"book-chapter","created":{"date-parts":[[2007,7,3]],"date-time":"2007-07-03T16:07:39Z","timestamp":1183478859000},"page":"327-354","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":833,"title":["An Overview of AspectJ"],"prefix":"10.1007","author":[{"given":"Gregor","family":"Kiczales","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Erik","family":"Hilsdale","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jim","family":"Hugunin","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Mik","family":"Kersten","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jeffrey","family":"Palm","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"William G.","family":"Griswold","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2001,6,21]]},"reference":[{"key":"18_CR1","unstructured":"Proceedings of the Conference on Domain-Specific Languages (DSL). USENIX, Santa Barbara, California, USA (1997)"},{"key":"18_CR2","first-page":"17","volume-title":"Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"D.G. Bobrow","year":"1986","unstructured":"Bobrow, D.G., et al.: CommonLoops: Merging Lisp and Object-Oriented Programming. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Portland, Oregon (1986) 17\u201329"},{"key":"18_CR3","unstructured":"Cannon, H.: Flavors: A non-hierarchical approach to object-oriented programming. Symbolics Inc.(1982)"},{"key":"18_CR4","volume-title":"Position paper for the Advanced Separation of Concerns Workshop at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"Y. Coady","year":"2000","unstructured":"Coady, Y., G. Kiczales, and M. Feeley: Exploring an Aspect-Oriented Approach to Operating System Code. In: Position paper for the Advanced Separation of Concerns Workshop at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Minneapolis, Minnesota, USA (2000)"},{"key":"18_CR5","doi-asserted-by":"publisher","first-page":"250","DOI":"10.1007\/3-540-48443-4_22","volume-title":"Meta-Level Architectures and Reflection","author":"K. DeVolder","year":"1999","unstructured":"DeVolder, K.: Aspect-Oriented Logic Meta Programming. In: Meta-Level Architectures and Reflection, Reflection\u201999. Springer, Saint-Malo, France (1999) 250\u2013272"},{"key":"18_CR6","volume-title":"Position paper for the Advanced Separation of Concerns Workshop at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"R.E. Filman","year":"2000","unstructured":"Filman, R.E. and D.P. Friedman: Aspect-Oriented Programming is Quantification and Obliviousness. In: Position paper for the Advanced Separation of Concerns Workshop at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Minneapolis, Minnesota, USA (2000)"},{"key":"18_CR7","volume-title":"The Design of Distributed Hyperlinked Programming Documentation (IWHD)","author":"L. Friendly","year":"1995","unstructured":"Friendly, L.: Design of Javadoc. In: The Design of Distributed Hyperlinked Programming Documentation (IWHD). Springer-Verlag, Montpellier, France (1995)"},{"key":"18_CR8","volume-title":"The Interactive Programming environment","author":"A. S.-8. Goldberg","year":"1984","unstructured":"Goldberg, A.: Smalltalk-80: The Interactive Programming environment. Addisson-Wesley, Reading MA (1984)"},{"key":"18_CR9","unstructured":"Goldberg, A. and D. Robson: Smalltalk-80: The Language and Its Implementation. Addison-Wesley, (1983)"},{"issue":"2","key":"18_CR10","doi-asserted-by":"publisher","first-page":"131","DOI":"10.1006\/jvlc.1996.0009","volume":"7","author":"T.R.G. Green","year":"1996","unstructured":"Green, T.R.G. and M. Petre: Usability analysis of visual programming environments: a\u2019 cognitive dimensions\u2019 approach. Journal of Visual Languages and Computing. 7,2. (1996) 131\u2013174","journal-title":"Journal of Visual Languages and Computing"},{"key":"18_CR11","unstructured":"Griswold, D.: The Java HotSpot Virtual Machine Architecture. Sun Microsystems, Inc.(1998)"},{"key":"18_CR12","unstructured":"Ichisugi, Y., S. Matsuoka, and A. Yonezawa: RbCl: A reflective object-oriented concurrent language without a run-time kernel. In: International Workshop on New Models for Software Architecture (IMSA): Reflection and Meta-Level Architecture. Tama City, Tokyo (1992) 24\u201335"},{"key":"18_CR13","doi-asserted-by":"crossref","first-page":"249","DOI":"10.1007\/3-540-63827-X_68","volume-title":"Proceedings of the International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE)","author":"J. Irwin","year":"1997","unstructured":"Irwin, J., et al.: Aspect-Oriented Programming of Sparse Matrix Code. In: Proceedings of the International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE). Springer, Marina del Rey, CA, USA (1997) 249\u2013256"},{"key":"18_CR14","volume-title":"Proceedings of the European Conference on Object-Oriented Programming (ECOOP)","author":"G. Kiczales","year":"1997","unstructured":"Kiczales, G., et al.: Aspect-Oriented Programming. In: Proceedings of the European Conference on Object-Oriented Programming (ECOOP). Springer-Verlag, Finland (1997)"},{"key":"18_CR15","doi-asserted-by":"publisher","first-page":"99","DOI":"10.1145\/91556.91600","volume-title":"LISP and Functional Programming","author":"G. Kiczales","year":"1990","unstructured":"Kiczales, G. and L. Rodriguez: Efficient Method Dispatch in PCL. In: LISP and Functional Programming. ACM Press, Nice, France (1990) 99\u2013105"},{"key":"18_CR16","doi-asserted-by":"crossref","unstructured":"Lewis, J., et al.: Implicit Parameters: Dynamic Scoping with Static Types. In: Proceedings of the 27th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. Boston, Massachusetts (2000) 108\u2013118","DOI":"10.1145\/325694.325708"},{"key":"18_CR17","volume-title":"Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns","author":"K.J. Lieberherr","year":"1996","unstructured":"Lieberherr, K.J.: Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns. PWS Publishing Company, Boston (1996)"},{"key":"18_CR18","series-title":"Technical Report","volume-title":"A Language Framework for Distributed Programming","author":"C.V. Lopes","year":"1997","unstructured":"Lopes, C.V. and G. Kiczales: D: A Language Framework for Distributed Programming. Technical Report SPL97-010, P9710047. Xerox Palo Alto Research Center, Palo Alto, CA (1997)"},{"key":"18_CR19","doi-asserted-by":"publisher","first-page":"147","DOI":"10.1145\/38765.38821","volume-title":"Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"P. Maes","year":"1987","unstructured":"Maes, P.: Concepts and Experiments in Computational Reflection. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Orlando, Florida (1987) 147\u2013155"},{"key":"18_CR20","unstructured":"Masuhara, H., S. Matsuoka, and A. Yonezawa: Designing an OO reflective language for massively-parallel processors. In: Position paper for the workshop on Object-Oriented Reflection and Metalevel Architectures at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). Washington, DC (1993)"},{"key":"18_CR21","doi-asserted-by":"publisher","first-page":"231","DOI":"10.1007\/BFb0057025","volume-title":"Proceedings of the European Conference on Object-Oriented Programming (ECOOP)","author":"S. Matsuoka","year":"1991","unstructured":"Matsuoka, S., T. Watanabe, and A. Yonezawa: Hybrid group reflective architecture for object-oriented concurrent reflective programming. In: Proceedings of the European Conference on Object-Oriented Programming (ECOOP). Springer, Geneva, Switzerland (1991) 231\u2013250"},{"key":"18_CR22","unstructured":"McAffer, J.: The CodA MOP. In: Position paper for the workshop on Object-Oriented Reflection and Metalevel Architectures at the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA),. Washington, DC (1993)"},{"key":"18_CR23","series-title":"Technical Report","volume-title":"RG: A Case-Study for Aspect-Oriented Programming","author":"A. Mendhekar","year":"1997","unstructured":"Mendhekar, A., G. Kiczales, and J. Lamping: RG: A Case-Study for Aspect-Oriented Programming. Technical Report SPL97-009, P9710044. Xerox Palo Alto Research Center, Palo Alto, CA (1997)"},{"key":"18_CR24","doi-asserted-by":"crossref","unstructured":"Mezini, M. and K.J. Lieberherr: Adaptive Plug-and-Play Components for Evolutionary Software Development. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Vancouver, British Columbia, Canada (1998) 97\u2013116","DOI":"10.1145\/286936.286950"},{"key":"18_CR25","first-page":"1","volume-title":"Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"D.A. Moon","year":"1986","unstructured":"Moon, D.A.: Object-Oriented Programming with Flavors. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Portland, Oregon (1986) 1\u20138"},{"key":"18_CR26","doi-asserted-by":"crossref","unstructured":"Okamura, H., Y. Ishikawa, and M. Tokoro: Metalevel Decomposition in AL-1\/D. In: International Symposium on Object Technologies for Advanced Software. Springer Verlag, (1993) 110\u2013127","DOI":"10.1007\/3-540-57342-9_69"},{"key":"18_CR27","doi-asserted-by":"crossref","first-page":"235","DOI":"10.1145\/217838.217864","volume-title":"Proceedings of the Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"H. Ossher","year":"1995","unstructured":"Ossher, H., et al.: Subject-Oriented Composition Rules. In: Proceedings of the Conference on Object Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, Austin, Texas (1995) 235\u2013250"},{"key":"18_CR28","doi-asserted-by":"crossref","first-page":"734","DOI":"10.1109\/ICSE.2000.870483","volume-title":"Proceedings of the International Conference on Software Engineering (ICSE)","author":"H. Ossher","year":"2000","unstructured":"Ossher, H. and P.L. Tarr: Hyper\/J: multi-dimensional separation of concerns for Java. In: Proceedings of the International Conference on Software Engineering (ICSE). ACM, Limerick, Ireland (2000) 734\u2013737"},{"issue":"12","key":"18_CR29","doi-asserted-by":"publisher","first-page":"1053","DOI":"10.1145\/361598.361623","volume":"15","author":"D.L. Parnas","year":"1972","unstructured":"Parnas, D.L.: On the Criteria To Be Used in Decomposing Systems Into Modules. Communications of the ACM. 15,12. (1972) 1053\u20131058","journal-title":"Communications of the ACM"},{"key":"18_CR30","series-title":"Lect Notes Comput Sci","volume-title":"Programming Methodology","author":"D.L. Parnas","year":"1974","unstructured":"Parnas, D.L.: Software Engineering or Methods for the Multi-Person Construction of Multi-Version Programs. Lecture Notes in Computer Science. Programming Methodology. (1974)"},{"key":"18_CR31","first-page":"461","volume-title":"Human-Computer Interaction: A Multidisciplinary Approach","author":"B. Shneiderman","year":"1983","unstructured":"Shneiderman, B.: Direct Manipulation: A step beyond Programming languages, In: Human-Computer Interaction: A Multidisciplinary Approach, R.M. Baecker and W.A.S. Buxton, Editors. Morgan Kaufmann Publishers, Inc.: Los Altos, CA (1983) 461\u2013467"},{"key":"18_CR32","unstructured":"Smith, B.C.: Reflection and Semantics in a Procedural Language, PhD Thesis. M.I.T(1982)"},{"key":"18_CR33","doi-asserted-by":"crossref","unstructured":"Smith, B.C.: Reflection and Semantics in LISP. In: Proceedings of the Symposium on Principles of Programming Languages (POPL). ACM, (1984) 23\u201335","DOI":"10.1145\/800017.800513"},{"key":"18_CR34","unstructured":"Steele, G.L.: Common Lisp the Language. 2nd ed. Digital Press, (1990) 1029"},{"key":"18_CR35","unstructured":"Stroustrup, B.: The C++ Programming Language. 3rd ed. Addison-Wesley, (1997)"},{"key":"18_CR36","doi-asserted-by":"crossref","first-page":"107","DOI":"10.1145\/302405.302457","volume-title":"Proceedings of the International Conference on Software Engineering (ICSE)","author":"P.L. Tarr","year":"1999","unstructured":"Tarr, P.L., et al.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: Proceedings of the International Conference on Software Engineering (ICSE). ACM, Los Angeles, CA (1999) 107\u2013119"},{"key":"18_CR37","volume-title":"Proceedings of the Conference on Foundations of Software Engineering (FSE)","author":"R. Walker","year":"2000","unstructured":"Walker, R. and G. Murphy: Implicit Context: Easing Software Evolution and Reuse. In: Proceedings of the Conference on Foundations of Software Engineering (FSE). ACM, San Diego, California (2000)"},{"key":"18_CR38","doi-asserted-by":"publisher","first-page":"306","DOI":"10.1145\/62083.62111","volume-title":"Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA)","author":"T. Watanabe","year":"1988","unstructured":"Watanabe, T. and A. Yonezawa: Reflection in an object-oriented concurrent language. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, San Diego, CA (1988) 306\u2013315"}],"container-title":["Lecture Notes in Computer Science","ECOOP 2001 \u2014 Object-Oriented Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/3-540-45337-7_18","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,5,12]],"date-time":"2023-05-12T21:00:19Z","timestamp":1683925219000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/3-540-45337-7_18"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2001]]},"ISBN":["9783540422068","9783540453376"],"references-count":38,"URL":"https:\/\/doi.org\/10.1007\/3-540-45337-7_18","relation":{},"ISSN":["0302-9743"],"issn-type":[{"value":"0302-9743","type":"print"}],"subject":[],"published":{"date-parts":[[2001]]},"assertion":[{"value":"21 June 2001","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}