{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,9]],"date-time":"2026-01-09T03:01:22Z","timestamp":1767927682583,"version":"3.49.0"},"reference-count":15,"publisher":"Elsevier BV","issue":"2","license":[{"start":{"date-parts":[[1990,6,1]],"date-time":"1990-06-01T00:00:00Z","timestamp":644198400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"},{"start":{"date-parts":[[2013,7,17]],"date-time":"2013-07-17T00:00:00Z","timestamp":1374019200000},"content-version":"vor","delay-in-days":8447,"URL":"https:\/\/www.elsevier.com\/open-access\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Theoretical Computer Science"],"published-print":{"date-parts":[[1990,6]]},"DOI":"10.1016\/0304-3975(90)90147-a","type":"journal-article","created":{"date-parts":[[2002,10,10]],"date-time":"2002-10-10T17:44:32Z","timestamp":1034271872000},"page":"231-248","source":"Crossref","is-referenced-by-count":356,"title":["Deforestation: transforming programs to eliminate trees"],"prefix":"10.1016","volume":"73","author":[{"given":"Philip","family":"Wadler","sequence":"first","affiliation":[]}],"member":"78","reference":[{"key":"10.1016\/0304-3975(90)90147-A_BIB1","series-title":"Proc. Conf. on Functional Programming Languages and Computer Architecture","article-title":"Compiling pattern matching","volume":"201","author":"Augustsson","year":"1985"},{"issue":"2","key":"10.1016\/0304-3975(90)90147-A_BIB2","doi-asserted-by":"crossref","first-page":"127","DOI":"10.1093\/comjnl\/32.2.127","article-title":"The Chalmers Lazy ML compiler","volume":"32","author":"Augustsson","year":"1989","journal-title":"Comput. J."},{"issue":"1","key":"10.1016\/0304-3975(90)90147-A_BIB3","doi-asserted-by":"crossref","first-page":"44","DOI":"10.1145\/321992.321996","article-title":"A transformation system for developing recursive programs","volume":"24","author":"Burstall","year":"1977","journal-title":"J. ACM"},{"key":"10.1016\/0304-3975(90)90147-A_BIB4","series-title":"M.Sc. Dissertation","article-title":"Deforestation: transformation of functional programs to eliminate intermediate trees","author":"Davis","year":"1987"},{"key":"10.1016\/0304-3975(90)90147-A_BIB5","article-title":"Principal type schemes for functional programs","author":"Damas","year":"1982","journal-title":"Proc. ACM Symp. on Principles of Programming Languages"},{"key":"10.1016\/0304-3975(90)90147-A_BIB6","series-title":"Research Report 89\/R4","article-title":"When will deforestation stop?","author":"Ferguson","year":"1989"},{"key":"10.1016\/0304-3975(90)90147-A_BIB7","series-title":"Technical Report SRI-CSL-88-1","article-title":"Higher order functions considered unnecessary for higher order programming","author":"Goguen","year":"1988"},{"key":"10.1016\/0304-3975(90)90147-A_BIB8","first-page":"29","article-title":"The principal type scheme of an object in combinatory logic","volume":"146","author":"Hindley","year":"1979","journal-title":"Trans. Amer. Math. Soc."},{"key":"10.1016\/0304-3975(90)90147-A_BIB9","doi-asserted-by":"crossref","first-page":"348","DOI":"10.1016\/0022-0000(78)90014-4","article-title":"A theory of type polymorphism in programming","volume":"17","author":"Milner","year":"1978","journal-title":"J. Comput. System Sci."},{"key":"10.1016\/0304-3975(90)90147-A_BIB10","series-title":"The Implementation of Functional Programming Languages","author":"Peyton Jones","year":"1987"},{"key":"10.1016\/0304-3975(90)90147-A_BIB11","article-title":"Experiments with a supercompiler","author":"Turchin","year":"1982","journal-title":"Proc. ACM Symp. on Lisp and Functional Programming"},{"key":"10.1016\/0304-3975(90)90147-A_BIB12","article-title":"Listlessness is better than laziness: lazy evaluation and garbage collection at compile time","author":"Wadler","year":"1984","journal-title":"Proc. ACM Symp. on Lisp and Functional Programming"},{"key":"10.1016\/0304-3975(90)90147-A_BIB13","series-title":"Proc. Workshop on Programs as Data Objects","article-title":"Listlessness is better than laziness II: composing listless functions","volume":"217","author":"Wadler","year":"1984"},{"key":"10.1016\/0304-3975(90)90147-A_BIB14","series-title":"The Implementation of Functional Programming Languages","article-title":"Efficient compilation of pattern-matching","author":"Wadler","year":"1987"},{"key":"10.1016\/0304-3975(90)90147-A_BIB15","author":"Wadler","year":"1987","journal-title":"The concatenate vanishes"}],"container-title":["Theoretical Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:030439759090147A?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:030439759090147A?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2019,4,13]],"date-time":"2019-04-13T18:20:57Z","timestamp":1555179657000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/030439759090147A"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1990,6]]},"references-count":15,"journal-issue":{"issue":"2","published-print":{"date-parts":[[1990,6]]}},"alternative-id":["030439759090147A"],"URL":"https:\/\/doi.org\/10.1016\/0304-3975(90)90147-a","relation":{},"ISSN":["0304-3975"],"issn-type":[{"value":"0304-3975","type":"print"}],"subject":[],"published":{"date-parts":[[1990,6]]}}}