{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,11]],"date-time":"2026-04-11T02:15:35Z","timestamp":1775873735288,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":29,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642415814","type":"print"},{"value":"9783642415821","type":"electronic"}],"license":[{"start":{"date-parts":[[2013,1,1]],"date-time":"2013-01-01T00:00:00Z","timestamp":1356998400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2013,1,1]],"date-time":"2013-01-01T00:00:00Z","timestamp":1356998400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-41582-1_6","type":"book-chapter","created":{"date-parts":[[2013,11,15]],"date-time":"2013-11-15T12:38:21Z","timestamp":1384519101000},"page":"86-103","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":14,"title":["The HERMIT in the Tree"],"prefix":"10.1007","author":[{"given":"Neil","family":"Sculthorpe","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Andrew","family":"Farmer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Andy","family":"Gill","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2013,11,16]]},"reference":[{"issue":"4","key":"6_CR1","doi-asserted-by":"publisher","first-page":"403","DOI":"10.1145\/356827.356831","volume":"12","author":"RS Bird","year":"1980","unstructured":"Bird, R.S.: Tabulation techniques for recursive programs. ACM Comput.Surv. 12(4), 403\u2013417 (1980)","journal-title":"ACM Comput.Surv."},{"issue":"1","key":"6_CR2","doi-asserted-by":"publisher","first-page":"44","DOI":"10.1145\/321992.321996","volume":"24","author":"RM Burstall","year":"1977","unstructured":"Burstall, R.M., Darlington, J.: A transformation system for developing recursive programs. J. ACM 24(1), 44\u201367 (1977)","journal-title":"J. ACM"},{"issue":"1\u20132","key":"6_CR3","first-page":"1","volume":"69","author":"WN Chin","year":"2006","unstructured":"Chin, W.N., Khoo, S.C., Jones, N.: Redundant call elimination via tupling. Fundam. Informaticae 69(1\u20132), 1\u201337 (2006)","journal-title":"Fundam. Informaticae"},{"key":"6_CR4","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2364506.2364508","volume-title":"In: 2012 ACM SIGPLAN Haskell Symposium","author":"A Farmer","year":"2012","unstructured":"Farmer, A., Gill, A., Komp, E., Sculthorpe, N.: The HERMIT in the machine: a plugin for the interactive transformation of GHC core language programs. In: 2012 ACM SIGPLAN Haskell Symposium, pp. 1\u201312. ACM, New York (2012)"},{"key":"6_CR5","unstructured":"GHC Team: The Glorious Glasgow Haskell Compilation System User\u2019s Guide, Version 7.6.2. http:\/\/www.haskell.org\/ghc (2013)"},{"key":"6_CR6","doi-asserted-by":"publisher","first-page":"108","DOI":"10.1145\/1159842.1159856","volume-title":"In: 2006 ACM SIGPLAN Haskell Workshop","author":"A Gill","year":"2006","unstructured":"Gill, A.: Introducing the Haskell equational reasoning assistant. In: 2006 ACM SIGPLAN Haskell Workshop, pp. 108\u2013109. ACM, New York (2006)"},{"issue":"2","key":"6_CR7","doi-asserted-by":"publisher","first-page":"227","DOI":"10.1017\/S0956796809007175","volume":"19","author":"A Gill","year":"2009","unstructured":"Gill, A., Hutton, G.: The worker\/wrapper transformation. J. Funct. Program. 19(2), 227\u2013251 (2009)","journal-title":"J. Funct. Program."},{"issue":"2","key":"6_CR8","first-page":"173","volume":"9","author":"W Guttmann","year":"2003","unstructured":"Guttmann, W., Partsch, H., Schulte, W., Vullinghs, T.: Tool support for the interactive derivation of formally correct functional programs. J. Univ. Comput. Sci. 9(2), 173\u2013188 (2003)","journal-title":"J. Univ. Comput. Sci."},{"key":"6_CR9","doi-asserted-by":"publisher","first-page":"164","DOI":"10.1145\/258948.258964","volume-title":"In: 2nd ACM SIGPLAN International Conference on Functional Programming","author":"Z Hu","year":"1997","unstructured":"Hu, Z., Iwasaki, H., Takeichi, M., Takano, A.: Tupling calculation eliminates multiple data traversals. In: 2nd ACM SIGPLAN International Conference on Functional Programming, pp. 164\u2013175. ACM, New York (1997)"},{"issue":"3","key":"6_CR10","doi-asserted-by":"publisher","first-page":"141","DOI":"10.1016\/0020-0190(86)90059-1","volume":"22","author":"RJM Hughes","year":"1986","unstructured":"Hughes, R.J.M.: A novel representation of lists and its application to the function \u201creverse\u201d. Inf. Process. Lett. 22(3), 141\u2013144 (1986)","journal-title":"Inf. Process. Lett."},{"key":"6_CR11","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511813672","volume-title":"Programming in Haskell","author":"G Hutton","year":"2007","unstructured":"Hutton, G.: Programming in Haskell. Cambridge University Press, Cambridge (2007)"},{"key":"6_CR12","first-page":"501","volume-title":"FASE 2012. LNCS","author":"H Li","year":"2012","unstructured":"Li, H., Thompson, S.: A domain-specific language for scripting refactoring in Erlang. In: de Lara, J., Zisman, A. (eds.) FASE 2012. LNCS, vol. 7212, pp. 501\u2013515. Springer, Heidelberg (2012)"},{"key":"6_CR13","doi-asserted-by":"publisher","first-page":"61","DOI":"10.1145\/1411273.1411283","volume-title":"In: 7th ACM SIGPLAN Erlang Workshop","author":"H Li","year":"2008","unstructured":"Li, H., Thompson, S., Orosz, G., T\u00f3th, M.: Refactoring with wrangler, updated: data and process refactorings, and integration with eclipse. In: 7th ACM SIGPLAN Erlang Workshop, pp. 61\u201372. ACM, New York (2008)"},{"issue":"4","key":"6_CR14","doi-asserted-by":"publisher","first-page":"29","DOI":"10.1016\/j.entcs.2005.02.053","volume":"141","author":"H Li","year":"2005","unstructured":"Li, H., Thompson, S., Reinke, C.: The Haskell refactorer, HaRe, and its API. Electron. Notes Theor. Comput. Sci. 141(4), 29\u201334 (2005)","journal-title":"Electron. Notes Theor. Comput. Sci."},{"issue":"1\u20132","key":"6_CR15","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1023\/A:1023068020483","volume":"16","author":"YA Liu","year":"2003","unstructured":"Liu, Y.A., Stoller, S.D.: Dynamic programming via static incrementalization. Higher-Order Symbolic Comput. 16(1\u20132), 37\u201362 (2003)","journal-title":"Higher-Order Symbolic Comput."},{"key":"6_CR16","doi-asserted-by":"publisher","first-page":"273","DOI":"10.1145\/800055.802044","volume-title":"In: 1984 ACM Symposium on LISP and Functional Programming","author":"A Pettorossi","year":"1984","unstructured":"Pettorossi, A.: A powerful strategy for deriving efficient programs by transformation. In: 1984 ACM Symposium on LISP and Functional Programming, pp. 273\u2013281. ACM, New York (1984)"},{"key":"6_CR17","volume-title":"The Implementation of Functional Programming Languages","author":"S Peyton Jones","year":"1987","unstructured":"Peyton Jones, S.: The Implementation of Functional Programming Languages. Prentice Hall, New York (1987)"},{"key":"6_CR18","doi-asserted-by":"publisher","first-page":"636","DOI":"10.1007\/3540543961_30","volume-title":"In: 5th ACM Conference on Functional Programming Languages and Computer Architecture","author":"SL Peyton Jones","year":"1991","unstructured":"Peyton Jones, S.L., Launchbury, J.: Unboxed values as first class citizens in a non-strict functional language. In: 5th ACM Conference on Functional Programming Languages and Computer Architecture, pp. 636\u2013666. Springer, Heidelberg (1991)"},{"issue":"1\u20133","key":"6_CR19","doi-asserted-by":"publisher","first-page":"3","DOI":"10.1016\/S0167-6423(97)00029-4","volume":"32","author":"S Jones Peyton","year":"1998","unstructured":"Jones Peyton, S., Santos, A.L.M.: A transformation-based optimiser or Haskell. Sci. Comput. Program. 32(1\u20133), 3\u201347 (1998)","journal-title":"Sci. Comput. Program."},{"key":"6_CR20","first-page":"203","volume-title":"In: 2001 ACM SIGPLAN Haskell Workshop","author":"S Peyton Jones","year":"2001","unstructured":"Peyton Jones, S., Tolmach, A., Hoare, T.: Playing by the rules: rewriting as a practical optimisation technique in GHC. In: 2001 ACM SIGPLAN Haskell Workshop, pp. 203\u2013233. ACM, New York (2001)"},{"key":"6_CR21","volume-title":"Types and Programming Languages","author":"BC Pierce","year":"2002","unstructured":"Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002)"},{"key":"6_CR22","unstructured":"Santos, A.: Compilation by transformation in non-strict functional languages. Ph.D. thesis, University of Glasgow (1995)"},{"key":"6_CR23","volume-title":"Denotational Semantics: A Methodology for Language Development","author":"DA Schmidt","year":"1986","unstructured":"Schmidt, D.A.: Denotational Semantics: A Methodology for Language Development. Allyn and Bacon, Newton (1986)"},{"key":"6_CR24","unstructured":"Sculthorpe, N., Frisby, N., Gill, A.: KURE: A Haskell-embedded strategic programming language with custom closed universes (in preparation)"},{"key":"6_CR25","unstructured":"Sculthorpe, N., Hutton, G.: Work it, wrap it, fix it, fold it (in preparation)"},{"key":"6_CR26","first-page":"53","volume-title":"In: 3rd ACM SIGPLAN Workshop on Types in Language Design and Implementaion","author":"M Sulzmann","year":"2007","unstructured":"Sulzmann, M., Chakravarty, M.M.T., Peyton Jones, S., Donnelly, K.: System F with type equality coercions. In: 3rd ACM SIGPLAN Workshop on Types in Language Design and Implementaion, pp. 53\u201366. ACM, New York (2007)"},{"key":"6_CR27","unstructured":"Tullsen, M.: PATH, a program transformation system for Haskell. Ph.D. thesis, Yale University (2002)"},{"key":"6_CR28","unstructured":"Wadler, P.: The concatenate vanishes. University of Glasgow, Tech. rep. (1989)"},{"key":"6_CR29","doi-asserted-by":"publisher","first-page":"53","DOI":"10.1145\/2103786.2103795","volume-title":"In: 7th ACM SIGPLAN Workshop on Types in Language Design and Implementation","author":"BA Yorgey","year":"2012","unstructured":"Yorgey, B.A., Weirich, S., Cretin, J., Peyton Jones, S., Vytiniotis, D., Magalh\u00e3es, J.P.: Giving Haskell a promotion. In: 7th ACM SIGPLAN Workshop on Types in Language Design and Implementation, pp. 53\u201366. ACM, New York (2012)"}],"container-title":["Lecture Notes in Computer Science","Implementation and Application of Functional Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-41582-1_6","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,2,19]],"date-time":"2023-02-19T19:51:10Z","timestamp":1676836270000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-642-41582-1_6"}},"subtitle":["Mechanizing Program Transformations in the GHC Core Language"],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642415814","9783642415821"],"references-count":29,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-41582-1_6","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013]]},"assertion":[{"value":"16 November 2013","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}