{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,10,25]],"date-time":"2026-10-25T15:16:45Z","timestamp":1792941405606,"version":"4.5.0"},"publisher-location":"Berlin, Heidelberg","reference-count":27,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540656999","type":"print"},{"value":"9783540490999","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1999]]},"DOI":"10.1007\/3-540-49099-x_17","type":"book-chapter","created":{"date-parts":[[2007,6,24]],"date-time":"2007-06-24T17:03:21Z","timestamp":1182704601000},"page":"258-272","source":"Crossref","is-referenced-by-count":7,"title":["Expressing Structural Properties as Language Constructs?"],"prefix":"10.1007","author":[{"given":"Shriram","family":"Krishnamurthi","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Yan-David","family":"Erlich","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Matthias","family":"Felleisen","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2002,3,28]]},"reference":[{"key":"17_CR1","unstructured":"Appel, A. W., B. F. Duba, D. B. MacQueen and A. P. Tolmach. Profiling in the presence of optimization and garbage collection. Technical Report CS-TR-197-88, Princeton University, November 1988."},{"key":"17_CR2","doi-asserted-by":"crossref","unstructured":"Batory, D. and B. J. Geraci. Composition validation and subjectivity in GenVoca generators. IEEE Transactions on Software Engineering, pages 67\u201382, Feburary 1997.","DOI":"10.1109\/32.585497"},{"key":"17_CR3","doi-asserted-by":"crossref","unstructured":"Beck, K. and W. Cunningham. A laboratory for teaching object-oriented thinking. In ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications, pages 1\u20136, 1989.","DOI":"10.1145\/74877.74879"},{"key":"17_CR4","unstructured":"Bosch, J. Design patterns as language constructs. Journal of Object-Oriented Programming, 1998."},{"key":"17_CR5","doi-asserted-by":"crossref","unstructured":"Budinsky, F. J., M. A. Finnie, J. M. Vlissides and P. S. Yu. Automatic code generation from design patterns. IBM Systems Journal, 35(2), 1996.","DOI":"10.1147\/sj.352.0151"},{"key":"17_CR6","unstructured":"Cardelli, L., F. Matthes and M. Abadi. Extensible syntax with lexical scoping. Research Report 121, Digital SRC, 1994."},{"issue":"4","key":"17_CR7","doi-asserted-by":"publisher","first-page":"295","DOI":"10.1007\/BF01806308","volume":"5","author":"R. K. Dybvig","year":"1993","unstructured":"Dybvig, R. K., R. Hieb and C. Bruggeman. Syntactic abstraction in Scheme. Lisp and Symbolic Computation, 5(4):295\u2013326, December 1993.","journal-title":"Lisp and Symbolic Computation"},{"key":"17_CR8","doi-asserted-by":"crossref","unstructured":"Findler, R. B., C. Flanagan, M. Flatt, S. Krishnamurthi and M. Felleisen. DrScheme: A pedagogic programming environment for Scheme. In Ninth International Symposium on Programming Languages, Implementations, Logics, and Programs, pages 369\u2013388, 1997.","DOI":"10.1007\/BFb0033856"},{"key":"17_CR9","unstructured":"Flatt, M. PLT MzScheme: Language manual. Technical Report TR97-280, Rice University, 1997."},{"key":"17_CR10","doi-asserted-by":"crossref","unstructured":"Flatt, M., S. Krishnamurthi and M. Felleisen. Classes and mixins. In Symposium on Principles of Programming Languages, pages 171\u2013183, January 1998.","DOI":"10.1145\/268946.268961"},{"key":"17_CR11","doi-asserted-by":"crossref","unstructured":"Florijn, G., M. Meijers and P. van Winsen. Tool support for object-oriented patterns. In European Conference on Object-Oriented Programming, pages 472\u2013495, 1997.","DOI":"10.1007\/BFb0053391"},{"key":"17_CR12","series-title":"Addison-Wesley Personal Computing Series","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1995","unstructured":"Gamma, E., R. Helm, R. Johnson and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Personal Computing Series. Addison-Wesley, Reading, MA, 1995."},{"key":"17_CR13","doi-asserted-by":"crossref","unstructured":"Hedin, G. Language support for design patterns using attribute extension. In Bosch, J. and S. Mitchell, editors, European Conference on Object-Oriented Programming Workshop Reader, pages 137\u2013140, 1997.","DOI":"10.1007\/3-540-69687-3_29"},{"key":"17_CR14","doi-asserted-by":"crossref","unstructured":"Helm, R., I. M. Holland and D. Gangopadhyay. Contracts: Specifying behavioral compositions in object-oriented systems. In ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications, pages 169\u2013180, 1990.","DOI":"10.1145\/97945.97967"},{"key":"17_CR15","doi-asserted-by":"crossref","unstructured":"Kiczales, G., J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J.-M. Loingtier and J. Irwin. Aspect-oriented programming. In European Conference on Object-Oriented Programming, June 1997.","DOI":"10.1007\/BFb0053381"},{"key":"17_CR16","doi-asserted-by":"crossref","unstructured":"Kohlbecker, E. E., D. P. Friedman, M. Felleisen and B. F. Duba. Hygienic macro expansion. In ACM Symposium on Lisp and Functional Programming, pages 151\u2013161, 1986.","DOI":"10.1145\/319838.319859"},{"key":"17_CR17","doi-asserted-by":"crossref","unstructured":"Kohlbecker, E. E. and M. Wand. Macros-by-example: Deriving syntactic transformations from their specications. In Symposium on Principles of Programming Languages, pages 77\u201384, 1987.","DOI":"10.1145\/41625.41632"},{"key":"17_CR18","series-title":"Technical Report 99-334","volume-title":"PLT McMicMac: Elaborator manual","author":"S. Krishnamurthi","year":"1999","unstructured":"Krishnamurthi, S. PLT McMicMac: Elaborator manual. Technical Report 99-334, Rice University, Houston, TX, USA, 1999."},{"key":"17_CR19","doi-asserted-by":"crossref","unstructured":"Lauder, A. and S. Kent. Precise visual specification of design patterns. In European Conference on Object-Oriented Programming, pages 114\u2013134, July 1998.","DOI":"10.1007\/BFb0054089"},{"key":"17_CR20","volume-title":"Adaptive Object-Oriented Programming","author":"K. J. Lieberherr","year":"1996","unstructured":"Lieberherr, K. J. Adaptive Object-Oriented Programming. PWS Publishing, Boston, MA, USA, 1996."},{"key":"17_CR21","doi-asserted-by":"crossref","unstructured":"Meijler, T. D., S. Demeyer and R. Engel. Making design patterns explicit in FACE, a framework for adaptive composition environment. In Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pages 94\u2013110, September 1997.","DOI":"10.1145\/267896.267905"},{"issue":"4","key":"17_CR22","doi-asserted-by":"publisher","first-page":"531","DOI":"10.1145\/115372.115369","volume":"13","author":"T. Sheard","year":"1991","unstructured":"Sheard, T. Automatic generation and use of abstract structure operators. ACM Transactions on Programming Languages and Systems, 13(4):531\u2013557, October 1991.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"17_CR23","unstructured":"Sheard, T. Guide to using CRML: Compile-time Reflective ML. Technical report, Department of Computer Science and Engineering, Oregon Graduate Institute, November 1992."},{"key":"17_CR24","doi-asserted-by":"crossref","unstructured":"Smaragdakis, Y. and D. Batory. Implementing layered designs and mixin layers. In European Conference on Object-Oriented Programming, pages 550\u2013570, July 1998.","DOI":"10.1007\/BFb0054107"},{"key":"17_CR25","unstructured":"Soukup, J. Implementing patterns. In Pattern Languages of Program Design, pages 395\u2013412, 1995."},{"key":"17_CR26","doi-asserted-by":"crossref","unstructured":"Taha, W. and T. Sheard. Multi-stage programming with explicit annotations. In ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, pages 203\u2013217, 1997.","DOI":"10.1145\/258993.259019"},{"key":"17_CR27","unstructured":"Xerox PARC AspectJ Team. The AspectJ primer. Web document http:\/\/www.parc.xerox.com\/spl\/projects\/aop\/aspectj\/ , January 1999."}],"container-title":["Lecture Notes in Computer Science","Programming Languages and Systems"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/3-540-49099-X_17","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,4,29]],"date-time":"2019-04-29T05:32:45Z","timestamp":1556515965000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/3-540-49099-X_17"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1999]]},"ISBN":["9783540656999","9783540490999"],"references-count":27,"URL":"https:\/\/doi.org\/10.1007\/3-540-49099-x_17","relation":{},"ISSN":["0302-9743"],"issn-type":[{"value":"0302-9743","type":"print"}],"subject":[],"published":{"date-parts":[[1999]]}}}