{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,30]],"date-time":"2025-10-30T22:22:53Z","timestamp":1761862973660},"publisher-location":"Berlin, Heidelberg","reference-count":20,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540235804"},{"type":"electronic","value":"9783540301752"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2004]]},"DOI":"10.1007\/978-3-540-30175-2_9","type":"book-chapter","created":{"date-parts":[[2010,9,23]],"date-time":"2010-09-23T19:34:58Z","timestamp":1285270498000},"page":"168-185","source":"Crossref","is-referenced-by-count":13,"title":["Metaphor: A Multi-stage, Object-Oriented Programming Language"],"prefix":"10.1007","author":[{"given":"Gregory","family":"Neverov","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Paul","family":"Roe","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"9_CR1","doi-asserted-by":"publisher","first-page":"203","DOI":"10.1145\/258993.259019","volume-title":"Partial Evaluation and Semantics-Based Program Manipulation","author":"W. Taha","year":"1997","unstructured":"Taha, W., Sheard, T.: Multi-stage programming with explicit annotations. In: Partial Evaluation and Semantics-Based Program Manipulation, Amsterdam, The Netherlands, June 1997, pp. 203\u2013217. ACM, New York (1997)"},{"key":"9_CR2","unstructured":"Taha, W.: Multi-Stage Programming: Its Theory and Applications. PhD thesis, Oregon Graduate Institute of Science and Technology (1999)"},{"key":"9_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1007\/3-540-44806-3_2","volume-title":"Semantics, Applications, and Implementation of Program Generation","author":"T. Sheard","year":"2001","unstructured":"Sheard, T.: Accomplishments and research challenges in meta-programming. In: Taha, W. (ed.) SAIG 2001. LNCS, vol.\u00a02196, p. 2. Springer, Heidelberg (2001) (invited talk)"},{"key":"9_CR4","unstructured":"Sheard, T., Benaissa, Z., Martel, M.: Introduction to multi-stage programming using MetaML. Technical report, Pacific Software Research Center, Oregon Graduate Institute (2000)"},{"key":"9_CR5","doi-asserted-by":"publisher","first-page":"470","DOI":"10.1145\/263699.263763","volume-title":"ACM Symposium on Principles of Programming Languages, POPL 1997","author":"P. Jansson","year":"1997","unstructured":"Jansson, P., Jeuring, J.: PolyP \u2013 A polytypic programming language extension. In: ACM Symposium on Principles of Programming Languages, POPL 1997, Paris, France, January 15-17, pp. 470\u2013482. ACM Press, New York (1997)"},{"key":"9_CR6","unstructured":"Hinze, R., Peyton Jones, S.: Derivable type classes. In: Hutton, G. (ed.) Haskell Workshop, Montreal, Canada (2000)"},{"key":"9_CR7","doi-asserted-by":"crossref","unstructured":"Cheney, J., Hinze, R.: A lightweight implementation of Generics and Dynamics. In: Haskell 2002, Pittsburgh, Pennsylvania, USA (2002)","DOI":"10.1145\/581690.581698"},{"key":"9_CR8","doi-asserted-by":"crossref","unstructured":"Sheard, T., Benaissa, Z., Pasalic, E.: DSL implementation using staging and monads. In: Domain-Specific Languages, pp. 81\u201394 (1999)","DOI":"10.1145\/331960.331975"},{"key":"9_CR9","doi-asserted-by":"crossref","unstructured":"Igarashi, A., Pierce, B., Wadler, P.: Featherweight Java: A minimal core calculus for Java and GJ. In: Meissner, L. (ed.) Proceedings of the 1999 ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages & Applications (OOPSLA 1999), N. Y, vol.\u00a034(10), pp. 132\u2013146 (1999)","DOI":"10.1145\/320385.320395"},{"key":"9_CR10","unstructured":"Kennedy, A., Syme, D.: Transposing F to C#. In: Proceedings of Workshop on Formal Techniques for Java-like Programs, M\u00e1laga, Spain (2002)"},{"key":"9_CR11","doi-asserted-by":"crossref","unstructured":"Calcagno, C., Moggi, E., Taha, W.: Closed types as a simple approach to safe imperative multi-stage programming. In: Automata, Languages and Programming, pp. 25\u201336 (2000)","DOI":"10.1007\/3-540-45022-X_4"},{"key":"9_CR12","volume-title":"Proceedings of the 30th ACM Symposium on Principles of Programming Languages (POPL 2003)","author":"W. Taha","year":"2003","unstructured":"Taha, W., Nielsen, M.F.: Environment classifiers. In: Proceedings of the 30th ACM Symposium on Principles of Programming Languages (POPL 2003), New Orleans, Louisiana, ACM Press, New York (2003)"},{"key":"9_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1007\/978-3-540-24725-8_7","volume-title":"Programming Languages and Systems","author":"C. Calcagno","year":"2004","unstructured":"Calcagno, C., Moggi, E., Taha, W.: ML-like inference for classifiers. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol.\u00a02986, pp. 79\u201393. Springer, Heidelberg (2004)"},{"key":"9_CR14","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/581690.581691","volume-title":"ACM SIGPLAN Haskell Workshop 2002","author":"T. Sheard","year":"2002","unstructured":"Sheard, T., Peyton Jones, S.: Template metaprogramming for Haskell. In: Chakravarty, M. (ed.) ACM SIGPLAN Haskell Workshop 2002, pp. 1\u201316. ACM Press, New York (2002)"},{"key":"9_CR15","doi-asserted-by":"crossref","unstructured":"Calcagno, C., Taha, W., Huang, L., Leroy, X.: Implementing multi-stage languages using ASTs, Gensym, and Reflection. In: Generative Programming and Component Engineering (2003)","DOI":"10.1007\/978-3-540-39815-8_4"},{"key":"9_CR16","doi-asserted-by":"crossref","unstructured":"Engler, D.R., Hsieh, W.C., Kaashoek, M.F.: \u00b4C: A language for high-level, efficient, and machine-independent dynamic code generation. In: Symposium on Principles of Programming Languages, pp. 131\u2013144 (1996)","DOI":"10.1145\/237721.237765"},{"key":"9_CR17","unstructured":"Hornof, L., Jim, T.: Certifying compilation and run-time code generation. In: Partial Evaluation and Semantic-Based Program Manipulation, pp. 60\u201374 (1999)"},{"key":"9_CR18","unstructured":"Jim, T., Morrisett, G., Grossman, D., Hicks, M., Cheney, J., Wang, Y.: Cyclone: A safe dialect of C. In: USENIX Annual Technical Conference, Monterey, CA, June 2002 (2002)"},{"key":"9_CR19","unstructured":"Oiwa, Y., Masuhara, H., Yonezawa, A.: DynJava: Type safe dynamic code generation in Java. In: JSST Workshop on Programming and Programming Languages, Tokyo (2001)"},{"key":"9_CR20","doi-asserted-by":"crossref","unstructured":"Attardi, G., Cisternino, A., Kennedy, A.: CodeBricks: Code fragments as building blocks. In: ACM Symposium on Partial Evaluation and Semantics-Based Program Manipulation (2003)","DOI":"10.1145\/777388.777396"}],"container-title":["Lecture Notes in Computer Science","Generative Programming and Component Engineering"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-30175-2_9.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T04:45:16Z","timestamp":1605761116000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-30175-2_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004]]},"ISBN":["9783540235804","9783540301752"],"references-count":20,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-30175-2_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2004]]}}}