{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:47:41Z","timestamp":1772164061203,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":28,"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.3136048","type":"proceedings-article","created":{"date-parts":[[2017,10,12]],"date-time":"2017-10-12T08:51:09Z","timestamp":1507798269000},"page":"246-258","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":1,"title":["Rewriting a shallow DSL using a GHC compiler extension"],"prefix":"10.1145","author":[{"given":"Mark","family":"Grebe","sequence":"first","affiliation":[{"name":"University of Kansas, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"David","family":"Young","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Andy","family":"Gill","sequence":"additional","affiliation":[{"name":"University of Kansas, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"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.1007\/978-3-642-24276-2_8"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2011.15"},{"key":"e_1_3_2_1_4_1","volume-title":"https:\/\/github.com\/conal\/lambda-ccc","author":"Elliott Conal","year":"2015","unstructured":"Conal Elliott . 2015. ( 2015 ). https:\/\/github.com\/conal\/lambda-ccc Conal Elliott. 2015. (2015). https:\/\/github.com\/conal\/lambda-ccc"},{"key":"e_1_3_2_1_5_1","volume-title":"https:\/\/github.com\/conal\/ talk-2015-haskell-to-hardware","author":"Elliott Conal","year":"2015","unstructured":"Conal Elliott . 2015. ( 2015 ). https:\/\/github.com\/conal\/ talk-2015-haskell-to-hardware Conal Elliott. 2015. (2015). https:\/\/github.com\/conal\/ talk-2015-haskell-to-hardware"},{"key":"e_1_3_2_1_6_1","volume-title":"https:\/\/github.com\/conal\/reification-rules","author":"Elliott Conal","year":"2016","unstructured":"Conal Elliott . 2016. ( 2016 ). https:\/\/github.com\/conal\/reification-rules Conal Elliott. 2016. (2016). https:\/\/github.com\/conal\/reification-rules"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/3110271"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804318"},{"key":"e_1_3_2_1_9_1","unstructured":"Levent Erkok. 2014. Hackage package hArduino-0.9. (2014).  Levent Erkok. 2014. Hackage package hArduino-0.9. (2014)."},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804303"},{"issue":"0","key":"e_1_3_2_1_11_1","first-page":"1","article-title":"Glasgow Haskell Compiler User\u2019s Guide","volume":"8","author":"Team GHC","year":"2016","unstructured":"GHC Team . 2016 . Glasgow Haskell Compiler User\u2019s Guide , Version 8 . 0 . 1 . https:\/\/downloads.haskell.org\/~ghc\/latest\/docs\/html\/users_guide\/ GHC Team. 2016. Glasgow Haskell Compiler User\u2019s Guide, Version 8.0.1. https:\/\/downloads.haskell.org\/~ghc\/latest\/docs\/html\/users_guide\/","journal-title":"Version"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10990-013-9098-7"},{"key":"e_1_3_2_1_13_1","volume-title":"The worker\/wrapper transformation. Journal of Functional Programming","author":"Gill A","year":"2009","unstructured":"A Gill and G Hutton . 2009. The worker\/wrapper transformation. Journal of Functional Programming ( 2009 ). A Gill and G Hutton. 2009. The worker\/wrapper transformation. Journal of Functional Programming (2009)."},{"key":"e_1_3_2_1_14_1","volume-title":"https:\/\/github.com\/ku-fpg\/ blank-canvas","author":"Gill Andy","year":"2015","unstructured":"Andy Gill and Ryan Scott . 2015. ( 2015 ). https:\/\/github.com\/ku-fpg\/ blank-canvas Andy Gill and Ryan Scott. 2015. (2015). https:\/\/github.com\/ku-fpg\/ blank-canvas"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2804302.2804311"},{"key":"e_1_3_2_1_16_1","volume-title":"https:\/\/github.com\/ku-fpg\/haskino","author":"Grebe Mark","year":"2017","unstructured":"Mark Grebe . 2017. ( 2017 ). https:\/\/github.com\/ku-fpg\/haskino Mark Grebe. 2017. (2017). https:\/\/github.com\/ku-fpg\/haskino"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-28228-2_10"},{"key":"e_1_3_2_1_18_1","unstructured":"Mark Grebe and Andy Gill. 2017. Threading the Arduino with Haskell. In Post-Proceedings of Trends in Functional Programming.  Mark Grebe and Andy Gill. 2017. Threading the Arduino with Haskell. In Post-Proceedings of Trends in Functional Programming."},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF00289507"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1007\/3540543961_30"},{"key":"e_1_3_2_1_21_1","volume-title":"Haskell workshop 1. 203\u2013233","author":"Jones Simon Peyton","year":"2001","unstructured":"Simon Peyton Jones , Andrew Tolmach , and Tony Hoare . 2001 . Playing by the rules: rewriting as a practical optimisation technique in GHC . In Haskell workshop 1. 203\u2013233 . Simon Peyton Jones, Andrew Tolmach, and Tony Hoare. 2001. Playing by the rules: rewriting as a practical optimisation technique in GHC. In Haskell workshop 1. 203\u2013233."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2658761.2658771"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628136.2628144"},{"key":"e_1_3_2_1_24_1","first-page":"1","article-title":"A transformationbased optimiser for Haskell","volume":"32","author":"Jones Simon Peyton","year":"1998","unstructured":"Simon Peyton Jones and Andr\u00e9 L. M. Santos . 1998 . A transformationbased optimiser for Haskell . Science of Computer Programming 32 , 1 \u2013 3 (1998), 3\u201347. Simon Peyton Jones and Andr\u00e9 L. M. Santos. 1998. A transformationbased optimiser for Haskell. Science of Computer Programming 32, 1\u20133 (1998), 3\u201347.","journal-title":"Science of Computer Programming"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1868294.1868314"},{"key":"e_1_3_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-662-44202-9_16"},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517208.2517220"},{"key":"e_1_3_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-40447-4_2"}],"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.3136048","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3136040.3136048","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.3136048"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,10,23]]},"references-count":28,"alternative-id":["10.1145\/3136040.3136048","10.1145\/3136040"],"URL":"https:\/\/doi.org\/10.1145\/3136040.3136048","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/3170492.3136048","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"}}]}}