{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,7,8]],"date-time":"2025-07-08T14:06:48Z","timestamp":1751983608595},"reference-count":47,"publisher":"Elsevier BV","issue":"1-2","license":[{"start":{"date-parts":[[2000,10,1]],"date-time":"2000-10-01T00:00:00Z","timestamp":970358400000},"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":4672,"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":[[2000,10]]},"DOI":"10.1016\/s0304-3975(00)00054-2","type":"journal-article","created":{"date-parts":[[2002,7,25]],"date-time":"2002-07-25T14:23:35Z","timestamp":1027607015000},"page":"243-287","source":"Crossref","is-referenced-by-count":25,"title":["Lambda-dropping: transforming recursive equations into programs with block structure"],"prefix":"10.1016","volume":"248","author":[{"given":"Olivier","family":"Danvy","sequence":"first","affiliation":[]},{"given":"Ulrik P.","family":"Schultz","sequence":"additional","affiliation":[]}],"member":"78","reference":[{"key":"10.1016\/S0304-3975(00)00054-2_BIB1","doi-asserted-by":"crossref","unstructured":"A.W. Appel, Compiling with Continuations, Cambridge University Press, New York, 1992.","DOI":"10.1017\/CBO9780511609619"},{"issue":"7","key":"10.1016\/S0304-3975(00)00054-2_BIB2","doi-asserted-by":"crossref","first-page":"337","DOI":"10.1007\/BF01018615","article-title":"Loop headers in lambda-calculus or CPS","volume":"7","author":"Appel","year":"1994","journal-title":"Lisp Symbolic Comput."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB3","doi-asserted-by":"crossref","unstructured":"A.W. Appel, Modern Compiler Implementation in {C, Java, ML}, Cambridge University Press, New York, 1998.","DOI":"10.1017\/CBO9780511811449"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB4","unstructured":"L. Augustsson, Compiling Lazy Functional Languages, Part II, Ph.D. Thesis, Department of Computer Sciences, Chalmers University of Technology, G\u00f6teborg, Sweden, 1988."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB5","doi-asserted-by":"crossref","unstructured":"A. Banerjee, D.A. Schmidt, A categorical interpretation of Landin's correspondence principle, in: S. Brookes, M. Main, A. Melton, M. Mislove, D. Schmidt (Eds.), Proc. 9th Conf. on Mathematical Foundations of Programming Semantics, Lecture Notes in Computer Science, Vol. 802, New Orleans, La, Springer, Berlin, April 1993, pp. 587\u2013602.","DOI":"10.1007\/3-540-58027-1_29"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB6","series-title":"The Lambda Calculus \u2013 its Syntax and Semantics","author":"Barendregt","year":"1984"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB7","unstructured":"L. Birkedal, M. Welinder, Partial evaluation of standard ML, Master's Thesis, DIKU, Computer Science Department, University of Copenhagen, DIKU Rapport 93\/22, August 1993."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB8","unstructured":"H.-J. Boehm (Ed.), Proc. 21st Ann. ACM Symp. on Principles of Programming Languages, Portland, Oregon, ACM Press, New York, January 1994."},{"issue":"3","key":"10.1016\/S0304-3975(00)00054-2_BIB9","doi-asserted-by":"crossref","first-page":"315","DOI":"10.1017\/S0956796800000769","article-title":"Efficient analyses for realistic off-line partial evaluation","volume":"3","author":"Bondorf","year":"1993","journal-title":"J. Funct Programming"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB10","doi-asserted-by":"crossref","unstructured":"W. Clinger, L.T. Hansen, Lambda, the ultimate label, or a simple optimizing compiler for Scheme, in: Talcott (Ed.), Proc. 1994 ACM Conf. on Lisp and Functional Programming, LISP Pointers, Vol. VII, No. 3, Orlando, Florida, ACM Press, New York, June 1994, pp. 128\u2013139.","DOI":"10.1145\/182409.156786"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB11","doi-asserted-by":"crossref","unstructured":"C. Consel, A tour of Schism: a partial evaluation system for higher-order applicative languages, in: D.A. Schmidt (Ed.), Proc. 2nd ACM SIGPLAN Symp. on Partial Evaluation and Semantics-Based Program Manipulation, Copenhagen, Denmark, ACM Press, New York, June 1993, pp. 145\u2013154.","DOI":"10.1145\/154630.154645"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB12","doi-asserted-by":"crossref","unstructured":"C. Consel, O. Danvy, Static and dynamic semantics processing, in: R. (Corky) Cartwright (Ed.), Proc. 18th Ann. ACM Symp. on Principles of Programming Languages, Orlando, FL, ACM Press, New York, January 1991, pp. 14\u201324.","DOI":"10.1145\/99583.99588"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB13","doi-asserted-by":"crossref","unstructured":"C. Consel, O. Danvy, Tutorial notes on partial evaluation, in: S.L. Graham (Ed.), Proc. 20th Ann. ACM Symp. on Principles of Programming Languages, Charleston, South Carolina, ACM Press, New York, January 1993, pp. 493\u2013501.","DOI":"10.1145\/158511.158707"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB14","doi-asserted-by":"crossref","unstructured":"O. Danvy, Type-directed partial evaluation, in: G.L. Steele Jr. (Ed.), Proc. 23rd Ann. ACM Symp. on Principles of Programming Languages, St. Petersburg Beach, FL, ACM Press, New York, January 1996, pp. 242\u2013257.","DOI":"10.1145\/237721.237784"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB15","doi-asserted-by":"crossref","unstructured":"O. Danvy, An extensional characterization of lambda-lifting and lambda-dropping, Technical Report BRICS RS-98-2, Department of Computer Science, University of Aarhus, Aarhus, Denmark, January 1998.","DOI":"10.7146\/brics.v5i2.21961"},{"issue":"2","key":"10.1016\/S0304-3975(00)00054-2_BIB16","doi-asserted-by":"crossref","first-page":"329","DOI":"10.1145\/234528.234741","article-title":"Resource-bounded partial evaluation","volume":"28","author":"Danvy","year":"1996","journal-title":"ACM Comput. Surveys"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB17","doi-asserted-by":"crossref","unstructured":"O. Danvy, U.P. Schultz, Lambda-dropping: transforming recursive equations into programs with block structure, in: C. Consel (Ed.), Proc. ACM SIGPLAN Symp. on Partial Evaluation and Semantics-Based Program Manipulation, Amsterdam, The Netherlands, ACM Press, New York, June 1997, pp. 90\u2013106, extended version available as the Technical Report BRICS-RS-97-6.","DOI":"10.1145\/258993.259007"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB18","doi-asserted-by":"crossref","unstructured":"C. Flanagan, A. Sabry, B.F. Duba, M. Felleisen, The essence of compiling with continuations, in: D.W. Wall (Ed.), Proc. ACM SIGPLAN\u201993 Conf. on Programming Languages Design and Implementation, SIGPLAN Notices, Vol. 28, no 6, Albuquerque, NM, ACM Press, New York, June 1993, pp. 237\u2013247.","DOI":"10.1145\/155090.155113"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB19","doi-asserted-by":"crossref","unstructured":"P. Fradet, Syntactic detection of single-threading using continuations, in: J. Hughes (Ed.), Proc. 5th ACM Conf. on Functional Programming and Computer Architecture, Lecture Notes in Computer Science, Vol. 523, Cambridge, MA, Springer, Berlin, August 1991, pp. 241\u2013258.","DOI":"10.1007\/3540543961_12"},{"issue":"1","key":"10.1016\/S0304-3975(00)00054-2_BIB20","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1017\/S0956796800000058","article-title":"A partial evaluator for the untyped lambda-calculus","volume":"1","author":"Gomard","year":"1991","journal-title":"J. Funct. Programming"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB21","doi-asserted-by":"crossref","unstructured":"J. Hughes, Super combinators: a new implementation method for applicative languages, in: D.P. Friedman, D.S. Wise (Eds.), Conf. Record 1982 ACM Symp. on Lisp and Functional Programming, Pittsburgh, Pennsylvania, ACM Press, New York, August 1982, pp. 1\u201310.","DOI":"10.1145\/800068.802129"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB22","doi-asserted-by":"crossref","unstructured":"J. Hughes, Type specialisation for the lambda calculus; or, a new paradigm for partial evaluation based on type inference, in: O. Danvy, R. Gl\u00fcck, P. Thiemann (Eds.), Partial Evaluation, Lecture Notes in Computer Science, Vol. 1110, Dagstuhl, Germany, Springer, Berlin, February 1996.","DOI":"10.1007\/3-540-61580-6_10"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB23","doi-asserted-by":"crossref","unstructured":"T. Johnsson, Lambda lifting: transforming programs to recursive equations, in: J.-P. Jouannaud (Ed.), Functional Programming Languages and Computer Architecture, Lecture Notes in Computer Science, Vol. 201, Nancy, France, Springer, Berlin, September 1985, pp. 190\u2013203.","DOI":"10.1007\/3-540-15975-4_37"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB24","unstructured":"T. Johnsson, Compiling lazy functional languages, Ph.D. Thesis, Department of Computer Sciences, Chalmers University of Technology, G\u00f6teborg, Sweden, 1987."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB25","unstructured":"N.D. Jones, C.K. Gomard, P. Sestoft, Partial Evaluation and Automatic Program Generation, Prentice Hall International Series in Computer Science, Prentice-Hall, Englewood Cliffs, NJ, 1993."},{"issue":"1","key":"10.1016\/S0304-3975(00)00054-2_BIB26","doi-asserted-by":"crossref","first-page":"9","DOI":"10.1007\/BF01806312","article-title":"MIX","volume":"2","author":"Jones","year":"1989","journal-title":"Lisp Symbolic Comput."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB27","doi-asserted-by":"crossref","first-page":"308","DOI":"10.1093\/comjnl\/6.4.308","article-title":"The mechanical evaluation of expressions","volume":"6","author":"Landin","year":"1964","journal-title":"Comput. J."},{"issue":"3","key":"10.1016\/S0304-3975(00)00054-2_BIB28","doi-asserted-by":"crossref","first-page":"157","DOI":"10.1145\/365230.365257","article-title":"The next 700 programming languages","volume":"9","author":"Landin","year":"1966","journal-title":"Commun. ACM"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB29","unstructured":"K. Malmkj\u00e6r, N. Heintze, O. Danvy, ML partial evaluation using set-based analysis, in: J. Reppy (Ed.), Record of the 1994 ACM SIGPLAN Workshop on ML and its Applications, Rapport de recherche N\u00b0 2265, INRIA, Orlando, FL, June 1994, pp. 112\u2013119, also appears as Technical Report CMU-CS-94-129."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB30","doi-asserted-by":"crossref","unstructured":"K. Malmkj\u00e6r, P. \u00d8rb\u00e6k, Polyvariant specialization for higher-order, block-structured languages, in: W.L. Scherlis (Ed.), Proc. ACM SIGPLAN Symp. on Partial Evaluation and Semantics-Based Program Manipulation, La Jolla, CA, ACM Press, New York, June 1995, pp. 66\u201376.","DOI":"10.1145\/215465.215558"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB31","doi-asserted-by":"crossref","unstructured":"A. Melton, D.A. Schmidt, G. Strecker, Galois connections and computer science applications, in: D.H. Pitt et al. (Eds.), Category Theory and Computer Programming, Lecture Notes in Computer Science, Vol. 240, Guildford, UK, Springer, Berlin, September 1986, pp. 299\u2013312.","DOI":"10.1007\/3-540-17162-2_130"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB32","doi-asserted-by":"crossref","unstructured":"S.P. Jones, W. Partain, A. Santos, Let-floating: moving bindings to give faster programs, in: R.K. Dybvig (Ed.), Proc. 1996 ACM SIGPLAN Internat. Conf. on Functional Programming, Philadelphia, Pennsylvania, ACM Press, New York, May 1996, pp. 1\u201312.","DOI":"10.1145\/232627.232630"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB33","doi-asserted-by":"crossref","unstructured":"S.L.P. Jones, An introduction to fully-lazy supercombinators, in: G. Cousineau, P.-L. Curien, B. Robinet (Eds.), Combinators and Functional Programming Languages, Lecture Notes in Computer Science, Vol. 242, Val d'Ajol, France, Springer, Berlin, 1985, pp. 176\u2013208.","DOI":"10.1007\/3-540-17184-3_45"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB34","unstructured":"S.L.P. Jones, The Implementation of Functional Programming Languages, Prentice Hall International Series in Computer Science, Prentice-Hall, Englewood Cliffs, NJ, 1987."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB35","unstructured":"S.L.P. Jones, D.R. Lester, Implementing Functional Languages, Prentice-Hall International Series in Computer Science, Prentice-Hall, Englewood Cliffs, NJ, 1992."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB36","unstructured":"E. Ruf, Topics in online partial evaluation, Ph.D. Thesis, Stanford University, Stanford, California, Technical Report CSL-TR-93-563, February 1993."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB37","unstructured":"A. Santos, Compilation by transformation in non-strict functional languages, Ph.D. Thesis, Department of Computing, University of Glasgow, Glasgow, Scotland, 1996."},{"issue":"2","key":"10.1016\/S0304-3975(00)00054-2_BIB38","doi-asserted-by":"crossref","first-page":"299","DOI":"10.1145\/3318.3323","article-title":"Detecting global variables in denotational definitions","volume":"7","author":"Schmidt","year":"1985","journal-title":"ACM Trans. Programming Languages Systems"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB39","unstructured":"U.P. Schultz, Implicit and explicit aspects of scope and block structure, Master's Thesis, DAIMI, Department of Computer Science, University of Aarhus, Aarhus, Denmark, June 1997."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB40","unstructured":"P. Sestoft, Replacing function parameters by global variables, Master's Thesis, DIKU, Computer Science Department, University of Copenhagen, Copenhagen, Denmark, October 1988."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB41","doi-asserted-by":"crossref","unstructured":"P. Sestoft, Replacing function parameters by global variables, in: J.E. Stoy (Ed.), Proc. 4th Internat. Conf. on Functional Programming and Computer Architecture, London, England, ACM Press, New York, September 1989, pp. 39\u201353.","DOI":"10.1145\/99370.99374"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB42","doi-asserted-by":"crossref","unstructured":"Z. Shao, A.W. Appel, Space-efficient closure representations, in: C.L. Talcott (Ed.), Proc. 1994 ACM Conf. on Lisp and Functional Programming, LISP Pointers, Vol. VII, no. 3, Orlando, FL, ACM Press, New York, June 1994, pp. 150\u2013161.","DOI":"10.1145\/182409.156783"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB43","unstructured":"O. Shivers, Control-flow analysis of higher-order languages or taming lambda, Ph.D. Thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, Pennsylvania, Technical Report CMU-CS-91-145, May 1991."},{"issue":"1","key":"10.1016\/S0304-3975(00)00054-2_BIB44","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1145\/239912.239915","article-title":"Lightweight closure conversion","volume":"19","author":"Steckler","year":"1997","journal-title":"ACM Trans. Programming Languages Systems"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB45","unstructured":"C.L. Talcott (Ed.), Proceedings of the 1994 ACM Conference on Lisp and Functional Programming, LISP Pointers, vol. VII, no. 3, Orlando, FL, ACM Press, New York, June 1994."},{"key":"10.1016\/S0304-3975(00)00054-2_BIB46","doi-asserted-by":"crossref","unstructured":"M. Tofte, J.-P. Talpin, Implementation of the typed call-by-value lambda-calculus using a stack of regions, in: H.-J. Boehm (Ed.), Proc. 21st Ann. ACM Symp. on Principles of Programming Languages, Portland, Oregon, ACM Press, New York, January 1994, pp. 188\u2013201.","DOI":"10.1145\/174675.177855"},{"key":"10.1016\/S0304-3975(00)00054-2_BIB47","doi-asserted-by":"crossref","unstructured":"P. Wadler, Deforestation: transforming programs to eliminate trees, Theoret. Comput. Sci. 73(2) (1989) 231\u2013248 (Special issue on ESOP\u201988, 2nd Eur. Symp. on Programming, Nancy, France, March 21\u201324, 1988).","DOI":"10.1016\/0304-3975(90)90147-A"}],"container-title":["Theoretical Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0304397500000542?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0304397500000542?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2023,4,9]],"date-time":"2023-04-09T07:13:15Z","timestamp":1681024395000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0304397500000542"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2000,10]]},"references-count":47,"journal-issue":{"issue":"1-2","published-print":{"date-parts":[[2000,10]]}},"alternative-id":["S0304397500000542"],"URL":"https:\/\/doi.org\/10.1016\/s0304-3975(00)00054-2","relation":{},"ISSN":["0304-3975"],"issn-type":[{"value":"0304-3975","type":"print"}],"subject":[],"published":{"date-parts":[[2000,10]]}}}