{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:46:51Z","timestamp":1772164011647,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":27,"publisher":"ACM","license":[{"start":{"date-parts":[[2011,10,22]],"date-time":"2011-10-22T00:00:00Z","timestamp":1319241600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2011,10,22]]},"DOI":"10.1145\/2048066.2048137","type":"proceedings-article","created":{"date-parts":[[2011,10,25]],"date-time":"2011-10-25T08:23:06Z","timestamp":1319530986000},"page":"939-958","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["Backstage Java"],"prefix":"10.1145","author":[{"given":"Zachary","family":"Palmer","sequence":"first","affiliation":[{"name":"The Johns Hopkins University, Baltimore, MD, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Scott F.","family":"Smith","sequence":"additional","affiliation":[{"name":"The Johns Hopkins University, Baltimore, MD, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2011,10,22]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/512529.512562"},{"key":"e_1_3_2_1_2_1","volume-title":"International Conference on, 0:  143","author":"Batory D.","year":"1998","unstructured":"D. Batory , B. Lofaso , and Y. Smaragdakis . JTS: Tools for implementing domain-specific languages. Software Reuse , International Conference on, 0: 143 , 1998 . D. Batory, B. Lofaso, and Y. Smaragdakis. JTS: Tools for implementing domain-specific languages. Software Reuse, International Conference on, 0: 143, 1998."},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/11561347_12"},{"key":"e_1_3_2_1_4_1","volume-title":"A metaobject protocol for C+","author":"Chiba S.","year":"1995","unstructured":"S. Chiba . A metaobject protocol for C+ , 1995 . S. Chiba. A metaobject protocol for C+, 1995."},{"key":"e_1_3_2_1_5_1","volume-title":"May","author":"Foundation Codehaus","year":"2010","unstructured":"Codehaus Foundation . Groovy - building AST guide , May 2010 . http:\/\/groovy.codehaus.org\/BuildingASTGuide. Codehaus Foundation. Groovy - building AST guide, May 2010. http:\/\/groovy.codehaus.org\/BuildingASTGuide."},{"key":"e_1_3_2_1_6_1","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"Gamma E.","year":"1994","unstructured":"E. Gamma , R. Helm , R. Johnson , and J. M. Vlissides . Design Patterns: Elements of Reusable Object-Oriented Software . Addison-Wesley Professional , 1 edition, November 1994 . E. Gamma, R. Helm, R. Johnson, and J. M. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional, 1 edition, November 1994."},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/507635.507646"},{"key":"e_1_3_2_1_8_1","volume-title":"The Java Language Specification","author":"Gosling J.","year":"2005","unstructured":"J. Gosling , B. Joy , G. Steele , and G. Bracha . The Java Language Specification , Third Edition. Addison-Wesley Longman , Amsterdam , 3 edition, June 2005 . J. Gosling, B. Joy, G. Steele, and G. Bracha. The Java Language Specification, Third Edition. Addison-Wesley Longman, Amsterdam, 3 edition, June 2005."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1416563.1416566"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.5555\/776261.776266"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/142882.143753"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2002.1000449"},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2048066.2048137"},{"key":"e_1_3_2_1_14_1","first-page":"263","volume-title":"Computational Complexity","author":"Parr T. J.","year":"1994","unstructured":"T. J. Parr and R. W. Quong . Adding semantic and syntactic predicates to LL(k): pred-LL(k) . In Computational Complexity , pages 263 -- 277 . Springer-Verlag , 1994 . T. J. Parr and R. W. Quong. Adding semantic and syntactic predicates to LL(k): pred-LL(k). In Computational Complexity, pages 263--277. Springer-Verlag, 1994."},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1142\/S0129626400000214"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/376656.376751"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.5555\/1792034.1792037"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/581690.581691"},{"key":"e_1_3_2_1_19_1","unstructured":"W. Taha and phet. al. MetaOCaml: A compiled type-safe multi-stage programming language. http:\/\/www.metaocaml.org\/.  W. Taha and phet. al. MetaOCaml: A compiled type-safe multi-stage programming language. http:\/\/www.metaocaml.org\/."},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(00)00053-0"},{"key":"e_1_3_2_1_21_1","volume-title":"Programming support of design patterns with compile-time reflection","author":"Tatsubori M.","year":"1998","unstructured":"M. Tatsubori and S. Chiba . Programming support of design patterns with compile-time reflection , 1998 . M. Tatsubori and S. Chiba. Programming support of design patterns with compile-time reflection, 1998."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1146841.1146846"},{"key":"e_1_3_2_1_23_1","volume-title":"Technical report","author":"Veldhuizen T. L.","year":"2003","unstructured":"T. L. Veldhuizen . C+ templates are turing complete. Technical report , 2003 . T. L. Veldhuizen. C+ templates are turing complete. Technical report, 2003."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1111542.1111569"},{"key":"e_1_3_2_1_25_1","volume-title":"Program transformation with Stratego\/XT: Rules, strategies, tools, and systems in StrategoXT 0.9","author":"Visser E.","year":"2004","unstructured":"E. Visser . Program transformation with Stratego\/XT: Rules, strategies, tools, and systems in StrategoXT 0.9 , 2004 . E. Visser. Program transformation with Stratego\/XT: Rules, strategies, tools, and systems in StrategoXT 0.9, 2004."},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.5555\/954186.954204"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1806596.1806642"}],"event":{"name":"SPLASH '11: Conference on Systems, Programming, and Applications: Software for Humanity","location":"Portland Oregon USA","acronym":"SPLASH '11","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages"]},"container-title":["Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2048066.2048137","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2048066.2048137","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T05:48:32Z","timestamp":1750225712000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2048066.2048137"}},"subtitle":["making a difference in metaprogramming"],"short-title":[],"issued":{"date-parts":[[2011,10,22]]},"references-count":27,"alternative-id":["10.1145\/2048066.2048137","10.1145\/2048066"],"URL":"https:\/\/doi.org\/10.1145\/2048066.2048137","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/2076021.2048137","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2011,10,22]]},"assertion":[{"value":"2011-10-22","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}