{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,11]],"date-time":"2026-04-11T02:13:37Z","timestamp":1775873617260,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":55,"publisher":"ACM","license":[{"start":{"date-parts":[[2017,10,23]],"date-time":"2017-10-23T00:00:00Z","timestamp":1508716800000},"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":[[2017,10,23]]},"DOI":"10.1145\/3136040.3136043","type":"proceedings-article","created":{"date-parts":[[2017,10,12]],"date-time":"2017-10-12T08:51:09Z","timestamp":1507798269000},"page":"131-145","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":13,"title":["Quoted staged rewriting: a practical approach to library-defined optimizations"],"prefix":"10.1145","author":[{"given":"Lionel","family":"Parreaux","sequence":"first","affiliation":[{"name":"EPFL, Switzerland"}]},{"given":"Amir","family":"Shaikhha","sequence":"additional","affiliation":[{"name":"EPFL, Switzerland"}]},{"given":"Christoph E.","family":"Koch","sequence":"additional","affiliation":[{"name":"EPFL, Switzerland"}]}],"member":"320","published-online":{"date-parts":[[2017,10,23]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/MEMCOD.2010.5558637"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796809007205"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500586"},{"key":"e_1_3_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/207110.207154"},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/201059.201061"},{"key":"e_1_3_2_1_7_1","volume-title":"ICFP '07","author":"Coutts Duncan","year":"2007","unstructured":"Duncan Coutts , Roman Leshchinskiy , and Don Stewart . 2007 . Stream Fusion. From Lists to Streams to Nothing at All . In ICFP '07 . Duncan Coutts, Roman Leshchinskiy, and Don Stewart. 2007. Stream Fusion. From Lists to Streams to Nothing at All. In ICFP '07."},{"key":"e_1_3_2_1_8_1","volume-title":"Generic Program Transformation","author":"de Moor Oege","unstructured":"Oege de Moor and Ganesh Sittampalam . 1999. Generic Program Transformation . Springer Berlin Heidelberg , Berlin, Heidelberg , 116-149. Oege de Moor and Ganesh Sittampalam. 1999. Generic Program Transformation. Springer Berlin Heidelberg, Berlin, Heidelberg, 116-149."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(00)00402-3"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(00)00402-3"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2499370.2462166"},{"key":"e_1_3_2_1_12_1","unstructured":"Andrew Farmer. 2015. HERMIT: Mechanized Reasoning during Compilation in the Glasgow Haskell Compiler. Ph.D. Dissertation. University of Kansas.  Andrew Farmer. 2015. HERMIT: Mechanized Reasoning during Compilation in the Glasgow Haskell Compiler . Ph.D. Dissertation. University of Kansas."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2543728.2543736"},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/173262.155113"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/507669.507646"},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/165180.165214"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449913.1449935"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/242224.242477"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/253228.253356"},{"key":"e_1_3_2_1_21_1","unstructured":"Neil D Jones Carsten K Gomard and Peter Sestoft. 1993. Partial evaluation and automatic program generation. Peter Sestoft.   Neil D Jones Carsten K Gomard and Peter Sestoft. 1993. Partial evaluation and automatic program generation . Peter Sestoft."},{"key":"e_1_3_2_1_22_1","volume-title":"Compiling Haskell by program transformation: A report from the trenches","author":"Peyton Jones Simon L.","unstructured":"Simon L. Peyton Jones . 1996. Compiling Haskell by program transformation: A report from the trenches . Springer Berlin Heidelberg , Berlin, Heidelberg , 18-44. Simon L. Peyton Jones. 1996. Compiling Haskell by program transformation: A report from the trenches. Springer Berlin Heidelberg, Berlin, Heidelberg, 18-44."},{"key":"e_1_3_2_1_23_1","volume-title":"2001 Haskell Workshop. ACM SIGPLAN.","author":"Peyton Jones Simon L.","unstructured":"Simon L. Peyton Jones , Andrew Tolmach , and Tony Hoare . [n. d.]. Playing by the rules: rewriting as a practical optimisation technique in GHC . In 2001 Haskell Workshop. ACM SIGPLAN. Simon L. Peyton Jones, Andrew Tolmach, and Tony Hoare. [n. d.]. Playing by the rules: rewriting as a practical optimisation technique in GHC. In 2001 Haskell Workshop. ACM SIGPLAN."},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2774975.2774981"},{"key":"e_1_3_2_1_25_1","first-page":"73","article-title":"Yin-Yang: Concealing the Deep Embedding of DSLs (GPCE 2014)","author":"Jovanovic Vojin","year":"2014","unstructured":"Vojin Jovanovic , Amir Shaikhha , Sandro Stucki , Vladimir Nikolaev , Christoph Koch , and Martin Odersky . 2014 . Yin-Yang: Concealing the Deep Embedding of DSLs (GPCE 2014) . ACM , 73 - 82 . Vojin Jovanovic, Amir Shaikhha, Sandro Stucki, Vladimir Nikolaev, Christoph Koch, and Martin Odersky. 2014. Yin-Yang: Concealing the Deep Embedding of DSLs (GPCE 2014). ACM, 73-82.","journal-title":"ACM"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009880"},{"key":"e_1_3_2_1_27_1","volume-title":"RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation. In 2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation. 168-177","author":"Klint P.","unstructured":"P. Klint , T. v. d. Storm , and J. Vinju . 2009 . RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation. In 2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation. 168-177 . P. Klint, T. v. d. Storm, and J. Vinju. 2009. RASCAL: A Domain Specific Language for Source Code Analysis and Manipulation. In 2009 Ninth IEEE International Working Conference on Source Code Analysis and Manipulation. 168-177."},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2011.68"},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814204.2814208"},{"key":"e_1_3_2_1_30_1","volume-title":"Scala-virtualized. In Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation. ACM, 117-120","author":"Moors Adriaan","year":"2012","unstructured":"Adriaan Moors , Tiark Rompf , Philipp Haller , and Martin Odersky . 2012 . Scala-virtualized. In Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation. ACM, 117-120 . Adriaan Moors, Tiark Rompf, Philipp Haller, and Martin Odersky. 2012. Scala-virtualized. In Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation. ACM, 117-120."},{"key":"e_1_3_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/2847538.2847541"},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517208.2517228"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/3136000.3136005"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/960116.54010"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/JPROC.2004.840306"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/2998392.2998399"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"crossref","first-page":"127","DOI":"10.1145\/1868294.1868314","article-title":"Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs","author":"Rompf Tiark","year":"2010","unstructured":"Tiark Rompf and Martin Odersky . 2010 . Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs . In Generative Programming and Component Engineering. 127 - 136 . Tiark Rompf and Martin Odersky. 2010. Lightweight modular staging: a pragmatic approach to runtime code generation and compiled DSLs. In Generative Programming and Component Engineering. 127-136.","journal-title":"Generative Programming and Component Engineering."},{"key":"e_1_3_2_1_38_1","first-page":"497","article-title":"Optimizing data structures in high-level programs: new directions for extensible compilers based on staging","author":"Rompf Tiark","year":"2013","unstructured":"Tiark Rompf , Arvind K. Sujeeth , Nada Amin , Kevin J. Brown , Vojin Jovanovic , HyoukJoong Lee , Manohar Jonnalagedda , Kunle Olukotun , and Martin Odersky . 2013 . Optimizing data structures in high-level programs: new directions for extensible compilers based on staging . In POPL. 497 - 510 . Tiark Rompf, Arvind K. Sujeeth, Nada Amin, Kevin J. Brown, Vojin Jovanovic, HyoukJoong Lee, Manohar Jonnalagedda, Kunle Olukotun, and Martin Odersky. 2013. Optimizing data structures in high-level programs: new directions for extensible compilers based on staging. In POPL. 497-510.","journal-title":"POPL."},{"key":"e_1_3_2_1_39_1","volume-title":"Buildingblocks for performance oriented DSLs. DSL","author":"Rompf Tiark","year":"2011","unstructured":"Tiark Rompf , Arvind K Sujeeth , HyoukJoong Lee , Kevin J Brown , Hassan Chafi , Martin Odersky , and Kunle Olukotun . 2011. Buildingblocks for performance oriented DSLs. DSL ( 2011 ). Tiark Rompf, Arvind K Sujeeth, HyoukJoong Lee, Kevin J Brown, Hassan Chafi, Martin Odersky, and Kunle Olukotun. 2011. Buildingblocks for performance oriented DSLs. DSL (2011)."},{"key":"e_1_3_2_1_40_1","volume-title":"Lightweight Polymorphic Effects","author":"Rytz Lukas","unstructured":"Lukas Rytz , Martin Odersky , and Philipp Haller . 2012. Lightweight Polymorphic Effects . In ECOOP. Springer , 258-282. Lukas Rytz, Martin Odersky, and Philipp Haller. 2012. Lightweight Polymorphic Effects. In ECOOP. Springer, 258-282."},{"key":"e_1_3_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814204.2814217"},{"key":"e_1_3_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/331960.331975"},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.5555\/1949925.1949939"},{"key":"e_1_3_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/2784731.2784754"},{"key":"e_1_3_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517208.2517220"},{"key":"e_1_3_2_1_47_1","volume-title":"Domain-Specific Program Generation: International Seminar","author":"Taha Walid","year":"2003","unstructured":"Walid Taha . 2004. Domain-Specific Program Generation: International Seminar , Dagstuhl Castle , Germany, March 23-28, 2003 . Revised Papers. Springer Berlin Heidelberg , Berlin, Heidelberg, Chapter A Gentle Introduction to Multi-stage Programming, 30-50. Walid Taha. 2004. Domain-Specific Program Generation: International Seminar, Dagstuhl Castle, Germany, March 23-28, 2003. Revised Papers. Springer Berlin Heidelberg, Berlin, Heidelberg, Chapter A Gentle Introduction to Multi-stage Programming, 30-50."},{"key":"e_1_3_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/258994.259019"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0304-3975(00)00053-0"},{"key":"e_1_3_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814271"},{"key":"e_1_3_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1016\/S1571-0661(04)00270-1"},{"key":"e_1_3_2_1_52_1","volume-title":"Generative programming and component engineering","author":"Visser Eelco","unstructured":"Eelco Visser . 2002. Meta-programming with concrete object syntax . In Generative programming and component engineering . Springer , 299-315. Eelco Visser. 2002. Meta-programming with concrete object syntax. In Generative programming and component engineering. Springer, 299-315."},{"key":"e_1_3_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/291251.289425"},{"key":"e_1_3_2_1_54_1","first-page":"13","volume-title":"Building Program Optimizers with Rewriting Strategies (ICFP '98)","author":"Visser Eelco","year":"1998","unstructured":"Eelco Visser , Zine-el- Abidine Benaissa , and Andrew Tolmach . 1998 . Building Program Optimizers with Rewriting Strategies (ICFP '98) . 13 - 26 . Eelco Visser, Zine-el-Abidine Benaissa, and Andrew Tolmach. 1998. Building Program Optimizers with Rewriting Strategies (ICFP '98). 13-26."},{"key":"e_1_3_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.5555\/645387.651542"},{"key":"e_1_3_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/2699407"},{"key":"e_1_3_2_1_57_1","first-page":"41","article-title":"Extending the graal compiler to optimize libraries. In Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming","author":"W\u00fcrthinger Thomas","year":"2011","unstructured":"Thomas W\u00fcrthinger . 2011 . Extending the graal compiler to optimize libraries. In Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming , Systems, Languages, and Applications. ACM , 41 - 42 . Thomas W\u00fcrthinger. 2011. Extending the graal compiler to optimize libraries. In Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications. ACM, 41-42.","journal-title":"Systems, Languages, and Applications. ACM"},{"key":"e_1_3_2_1_58_1","volume-title":"OCaml Users and Developers Workshop.","author":"Yallop Jeremy","year":"2015","unstructured":"Jeremy Yallop and Leo White . 2015 . Modular macros . In OCaml Users and Developers Workshop. Jeremy Yallop and Leo White. 2015. Modular macros. In OCaml Users and Developers Workshop."}],"event":{"name":"SPLASH '17: Conference on Systems, Programming, Languages, and Applications: Software for Humanity","location":"Vancouver BC Canada","acronym":"SPLASH '17","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGAda ACM Special Interest Group on Ada Programming Language"]},"container-title":["Proceedings of the 16th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3136040.3136043","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3136040.3136043","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:26:46Z","timestamp":1750199206000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3136040.3136043"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,10,23]]},"references-count":55,"alternative-id":["10.1145\/3136040.3136043","10.1145\/3136040"],"URL":"https:\/\/doi.org\/10.1145\/3136040.3136043","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3170492.3136043","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2017,10,23]]},"assertion":[{"value":"2017-10-23","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}