{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,5]],"date-time":"2024-09-05T20:06:33Z","timestamp":1725566793926},"publisher-location":"Berlin, Heidelberg","reference-count":18,"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_10","type":"book-chapter","created":{"date-parts":[[2010,9,23]],"date-time":"2010-09-23T19:34:58Z","timestamp":1285270498000},"page":"186-205","source":"Crossref","is-referenced-by-count":14,"title":["Optimising Embedded DSLs Using Template Haskell"],"prefix":"10.1007","author":[{"given":"Sean","family":"Seefried","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Manuel","family":"Chakravarty","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gabriele","family":"Keller","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"10_CR1","unstructured":"The Glasgow Haskell Compiler, http:\/\/haskell.org\/ghc"},{"key":"10_CR2","doi-asserted-by":"crossref","unstructured":"Czarnecki, K., O\u2019Donnell, J., Striegnitz, J., Taha, W.: DSL Implementation in MetaOCaml, Template Haskell, and C++ (2003), http:\/\/www.cs.rice.edu\/~taha\/publications.html","DOI":"10.1007\/978-3-540-25935-0_4"},{"key":"10_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"284","DOI":"10.1007\/BFb0056621","volume-title":"Principles of Declarative Programming","author":"C. Elliott","year":"1998","unstructured":"Elliott, C.: Functional implementations of continuous modeled animation. In: Palamidessi, C., Meinke, K., Glaser, H. (eds.) ALP 1998 and PLILP 1998. LNCS, vol.\u00a01490, p. 284. Springer, Heidelberg (1998)"},{"key":"10_CR4","unstructured":"Elliott, C.: Functional Image Synthesis. In: Proceedings Bridges 2001, Mathematical Connections in Art, Music, and Science (2001)"},{"issue":"3","key":"10_CR5","doi-asserted-by":"publisher","first-page":"455","DOI":"10.1017\/S0956796802004574","volume":"13","author":"C. Elliott","year":"2003","unstructured":"Elliott, C., Finne, S., de Moor, O.: Compiling embedded languages. Journal of Functional Programming\u00a013(3), 455\u2013481 (2003)","journal-title":"Journal of Functional Programming"},{"key":"10_CR6","doi-asserted-by":"crossref","unstructured":"Friedman, D.P., Wand, M.: Reification: Reflection without Metaphysics. In: Proceedings of the 1984 ACM Symposium on LISP and functional programming, pp. 348\u2013355 (1984)","DOI":"10.1145\/800055.802051"},{"issue":"4es","key":"10_CR7","doi-asserted-by":"publisher","first-page":"196","DOI":"10.1145\/242224.242477","volume":"28","author":"P. Hudak","year":"1996","unstructured":"Hudak, P.: Building domain-specific embedded languages. ACM Computing Surveys (CSUR)\u00a028(4es), 196 (1996)","journal-title":"ACM Computing Surveys (CSUR)"},{"key":"10_CR8","first-page":"134","volume-title":"Proceedings: Fifth International Conference on Software Reuse","author":"P. Hudak","year":"1998","unstructured":"Hudak, P.: Modular domain specific languages and tools. In: Devanbu, P., Poulin, J. (eds.) Proceedings: Fifth International Conference on Software Reuse, pp. 134\u2013142. IEEE Computer Society Press, Los Alamitos (1998)"},{"issue":"3","key":"10_CR9","doi-asserted-by":"publisher","first-page":"465","DOI":"10.1017\/S0956796800001805","volume":"6","author":"P. Hudak","year":"1996","unstructured":"Hudak, P., Makucevich, T., Gadde, S., Whong, B.: Haskore music notation - an algebra of music. Journal of Functional Programming\u00a06(3), 465\u2013483 (1996)","journal-title":"Journal of Functional Programming"},{"key":"10_CR10","unstructured":"Jones, S.P., Tolmach, A., Hoare, T.: Playing by the Rules: Rewriting as a practical optimisation technique in GHC. In: International Conference on Functional Programming (ICFP 2001). Haskell Workshop (September 2001)"},{"issue":"3","key":"10_CR11","doi-asserted-by":"publisher","first-page":"26","DOI":"10.1145\/640136.604179","volume":"38","author":"R. L\u00e4mmel","year":"2003","unstructured":"L\u00e4mmel, R., Jones, S.P.: Scrap your boilerplate: a practical design pattern for generic programming. ACM SIGPLAN Notices\u00a038(3), 26\u201337 (2003); Proc. of the ACM SIGPLAN Workshop on Types in Language Design and Implementation (TLDI 2003)","journal-title":"ACM SIGPLAN Notices"},{"key":"10_CR12","unstructured":"Lynagh, I.: Unrolling and simplifying expressions with Template Haskell (May 2003), http:\/\/web.comlab.ox.ac.uk\/oucl\/work\/ian.lynagh\/papers\/Unrolling_and_Simplifying_Expressions_with_Template_Haskell.ps"},{"key":"10_CR13","doi-asserted-by":"crossref","unstructured":"Pang, A., Stewart, D., Seefried, S., Chakravarty, M.: Plugging Haskell In. To be published in Haskell Workshop (June 2004)","DOI":"10.1145\/1017472.1017478"},{"key":"10_CR14","doi-asserted-by":"crossref","unstructured":"Robinson, A.D.: The Impact of Economics on Compiler Optimization. In: Proceedings of the ACM 2001 Java Grande Conference, Standford, pp. 1\u201310 (June 2001)","DOI":"10.1145\/376656.376751"},{"issue":"9","key":"10_CR15","doi-asserted-by":"publisher","first-page":"106","DOI":"10.1145\/357766.351250","volume":"35","author":"M. Sage","year":"2000","unstructured":"Sage, M.: FranTk \u2013 a declarative GUI language for Haskell. ACM SIGPLAN Notices\u00a035(9), 106\u2013117 (2000)","journal-title":"ACM SIGPLAN Notices"},{"issue":"12","key":"10_CR16","doi-asserted-by":"publisher","first-page":"60","DOI":"10.1145\/636517.636528","volume":"37","author":"T. Sheard","year":"2002","unstructured":"Sheard, T., Jones, S.P.: Template Meta-Programming for Haskell. ACM SIGPLAN Notices: PLI Workshops\u00a037(12), 60\u201375 (2002)","journal-title":"ACM SIGPLAN Notices: PLI Workshops"},{"key":"10_CR17","doi-asserted-by":"crossref","unstructured":"Smith, B.C.: Reflection and Semantics in Lisp. In: Conf. Rec. 11th ACM Symp. on Principles of Programming Languages, pp. 23\u201335 (1984)","DOI":"10.1145\/800017.800513"},{"key":"10_CR18","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1145\/317636.317794","volume-title":"Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming (ICFP 1999)","author":"M. Wallace","year":"1999","unstructured":"Wallace, M., Runciman, C.: Haskell and XML: Generic combinators or type-based translation? In: Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming (ICFP 1999), 27-29, 1999, vol.\u00a034-9, pp. 148\u2013159. ACM Press, New York (1999)"}],"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_10.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,11,19]],"date-time":"2020-11-19T04:45:09Z","timestamp":1605761109000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-30175-2_10"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2004]]},"ISBN":["9783540235804","9783540301752"],"references-count":18,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-30175-2_10","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2004]]}}}