{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,8]],"date-time":"2024-09-08T21:37:31Z","timestamp":1725831451681},"publisher-location":"Cham","reference-count":17,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319240114"},{"type":"electronic","value":"9783319240121"}],"license":[{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"DOI":"10.1007\/978-3-319-24012-1_3","type":"book-chapter","created":{"date-parts":[[2015,10,6]],"date-time":"2015-10-06T14:01:22Z","timestamp":1444140082000},"page":"31-43","source":"Crossref","is-referenced-by-count":0,"title":["Preserving Lexical Scoping When Dynamically Embedding Languages"],"prefix":"10.1007","author":[{"given":"F\u00e9lix","family":"Ribeiro","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Hisham","family":"Muhammad","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Andr\u00e9 Murbach","family":"Maidl","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Roberto","family":"Ierusalimschy","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2015,11,15]]},"reference":[{"key":"3_CR1","unstructured":"Bawden, A.: Quasiquotation in Lisp. In: Danvy, O. (ed.) Proceedings of the ACM SIGPLAN Workshop on Partial Evaluation and Semantics-Based Program Manipulation (PEPM 1999). Number NS-99-1 in BRICS Note Series, pp. 4\u201312, San Antonio, Texas (1999)"},{"key":"3_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"57","DOI":"10.1007\/978-3-540-39815-8_4","volume-title":"Generative Programming and Component Engineering","author":"C Calcagno","year":"2003","unstructured":"Calcagno, C., Taha, W., Huang, L., Leroy, X.: Implementing multi-stage languages using ASTs, gensym, and reflection. In: Pfenning, F., Macko, M. (eds.) GPCE 2003. LNCS, vol. 2830, pp. 57\u201376. Springer, Heidelberg (2003)"},{"key":"3_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"51","DOI":"10.1007\/978-3-540-25935-0_4","volume-title":"Domain-Specific Program Generation","author":"K Czarnecki","year":"2004","unstructured":"Czarnecki, K., O\u2019Donnell, J.T., Striegnitz, J., Taha, W.: DSL implementation in MetaOCaml, template haskell, and C++. In: Lengauer, C., Batory, D., Blum, A., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 51\u201372. Springer, Heidelberg (2004)"},{"key":"3_CR4","doi-asserted-by":"crossref","unstructured":"DeVito, Z., Hegarty, J., Aiken, A., Hanrahan, P., Vitek, J.: Terra: a multi-stage language for high-performance computing. In: Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2013, pp. 105\u2013116, New York, NY, USA, ACM (2013)","DOI":"10.1145\/2499370.2462166"},{"key":"3_CR5","unstructured":"Fleutot, F.: Metalua: static meta-programming for Lua. \n                    https:\/\/github.com\/fab13n\/metalua\n                    \n                   (2007). Accessed February 2015"},{"key":"3_CR6","unstructured":"Fleutot, F., Tratt, L.: Contrasting compile-time meta-programming in Metalua and converge. In: Proceedings of the Workshop on Dynamic Languages and Applications (2007)"},{"key":"3_CR7","volume-title":"Domain Specific Languages","author":"M Fowler","year":"2010","unstructured":"Fowler, M.: Domain Specific Languages, 1st edn. Addison-Wesley Professional, Boston (2010)","edition":"1"},{"key":"3_CR8","unstructured":"Ierusalimschy, R.: Programming in Lua, 2nd edn. Lua.Org (2006)"},{"key":"3_CR9","doi-asserted-by":"crossref","unstructured":"Kameyama, Y., Kiselyov, O., Shan, C.C.: Closing the stage: from staged code to typed closures. In: Proceedings of the 2008 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation, PEPM 2008, pp. 147\u2013157, New York, NY, USA, ACM (2008)","DOI":"10.1145\/1328408.1328430"},{"key":"3_CR10","unstructured":"Maidl, A.M.: Lua-parser: a Lua 5.3 parser written with LPeg. \n                    https:\/\/github.com\/andremm\/lua-parser\n                    \n                   (2013). Accessed April 2015"},{"issue":"4","key":"3_CR11","doi-asserted-by":"publisher","first-page":"184","DOI":"10.1145\/367177.367199","volume":"3","author":"J McCarthy","year":"1960","unstructured":"McCarthy, J.: Recursive functions of symbolic expressions and their computation by machine, part I. Commun. ACM 3(4), 184\u2013195 (1960)","journal-title":"Commun. ACM"},{"key":"3_CR12","unstructured":"Microsoft: LINQ. \n                    https:\/\/msdn.microsoft.com\/en-us\/library\/bb397926.aspx\n                    \n                   (2013). Accessed April 2015"},{"key":"3_CR13","unstructured":"Muhammad, H.: LuaDec: a decompiler for the Lua language. \n                    http:\/\/luadec.luaforge.net\/\n                    \n                   (2006). Accessed April 2015"},{"key":"3_CR14","unstructured":"Taha, W.: Multi-stage programming: its theory and applications. Ph.D thesis, Oregon Graduate Institute of Science and Technology (1999)"},{"key":"3_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1007\/978-3-540-25935-0_3","volume-title":"Domain-Specific Program Generation","author":"W Taha","year":"2004","unstructured":"Taha, W.: A gentle introduction to multi-stage programming. In: Lengauer, C., Batory, D., Blum, A., Odersky, M. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 30\u201350. Springer, Heidelberg (2004)"},{"key":"3_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"260","DOI":"10.1007\/978-3-540-88643-3_6","volume-title":"Generative and Transformational Techniques in Software Engineering II","author":"W Taha","year":"2008","unstructured":"Taha, W.: A gentle introduction to multi-stage programming, part II. In: L\u00e4mmel, R., Visser, J., Saraiva, J. (eds.) Generative and Transformational Techniques in Software Engineering II. LNCS, vol. 5235, pp. 260\u2013290. Springer, Heidelberg (2008)"},{"key":"3_CR17","doi-asserted-by":"crossref","unstructured":"Westbrook, E., Ricken, M., Inoue, J., Yao, Y., Abdelatif, T., Taha, W.: Mint: java multi-stage programming using weak separability. In: Proceedings of the 2010 ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2010, pp. 400\u2013411, New York, NY, USA, ACM (2010)","DOI":"10.1145\/1809028.1806642"}],"container-title":["Lecture Notes in Computer Science","Programming Languages"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-24012-1_3","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,31]],"date-time":"2019-05-31T00:22:34Z","timestamp":1559262154000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-24012-1_3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"ISBN":["9783319240114","9783319240121"],"references-count":17,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-24012-1_3","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2015]]}}}