{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,24]],"date-time":"2026-03-24T15:38:33Z","timestamp":1774366713507,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":28,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642288685","type":"print"},{"value":"9783642288692","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-28869-2_7","type":"book-chapter","created":{"date-parts":[[2012,3,22]],"date-time":"2012-03-22T20:44:36Z","timestamp":1332449076000},"page":"128-147","source":"Crossref","is-referenced-by-count":21,"title":["The Call-by-Need Lambda Calculus, Revisited"],"prefix":"10.1007","author":[{"given":"Stephen","family":"Chang","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Matthias","family":"Felleisen","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"7_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"77","DOI":"10.1007\/BFb0014548","volume-title":"Theoretical Aspects of Computer Software","author":"Z. Ariola","year":"1997","unstructured":"Ariola, Z., Blom, S.: Cyclic Lambda Calculi. In: Ito, T., Abadi, M. (eds.) TACS 1997. LNCS, vol.\u00a01281, pp. 77\u2013106. Springer, Heidelberg (1997)"},{"key":"7_CR2","unstructured":"Ariola, Z.M., Felleisen, M.: The call-by-need lambda-calculus. Tech. Rep. CIS-TR-94-23, University of Oregon (1994)"},{"key":"7_CR3","doi-asserted-by":"publisher","first-page":"265","DOI":"10.1017\/S0956796897002724","volume":"7","author":"Z.M. Ariola","year":"1997","unstructured":"Ariola, Z.M., Felleisen, M.: The call-by-need lambda calculus. J. Funct. Program.\u00a07, 265\u2013301 (1997)","journal-title":"J. Funct. Program."},{"key":"7_CR4","doi-asserted-by":"crossref","unstructured":"Ariola, Z.M., Maraist, J., Odersky, M., Felleisen, M., Wadler, P.: A call-by-need lambda calculus. In: Proc. 22nd Symp. on Principles of Programming Languages, pp. 233\u2013246 (1995)","DOI":"10.1145\/199448.199507"},{"key":"7_CR5","unstructured":"Barendregt, H.P.: Lambda Calculus, Syntax and Semantics. North-Holland (1985)"},{"key":"7_CR6","unstructured":"Church, A.: The Calculi of Lambda Conversion. Princeton University Press (1941)"},{"key":"7_CR7","unstructured":"Curry, H.B., Feys, R.: Combinatory Logic, vol.\u00a0I. North-Holland (1958)"},{"key":"7_CR8","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"240","DOI":"10.1007\/978-3-642-12251-4_18","volume-title":"Functional and Logic Programming","author":"O. Danvy","year":"2010","unstructured":"Danvy, O., Millikin, K., Munk, J., Zerny, I.: Defunctionalized Interpreters for Call-by-Need Evaluation. In: Blume, M., Kobayashi, N., Vidal, G. (eds.) FLOPS 2010. LNCS, vol.\u00a06009, pp. 240\u2013256. Springer, Heidelberg (2010)"},{"key":"7_CR9","unstructured":"Felleisen, M., Findler, R.B., Flatt, M.: Semantics Engineering with PLT Redex. MIT Press (2009)"},{"issue":"3","key":"7_CR10","doi-asserted-by":"publisher","first-page":"243","DOI":"10.1016\/0304-3975(89)90069-8","volume":"69","author":"M. Felleisen","year":"1989","unstructured":"Felleisen, M., Friedman, D.P.: A syntactic theory of sequential state. Theor. Comput. Sci.\u00a069(3), 243\u2013287 (1989)","journal-title":"Theor. Comput. Sci."},{"key":"7_CR11","doi-asserted-by":"publisher","first-page":"271","DOI":"10.1007\/s10990-007-9014-0","volume":"20","author":"D.P. Friedman","year":"2007","unstructured":"Friedman, D.P., Ghuloum, A., Siek, J.G., Winebarger, O.L.: Improving the lazy Krivine machine. Higher Order Symbolic Computation\u00a020, 271\u2013293 (2007)","journal-title":"Higher Order Symbolic Computation"},{"key":"7_CR12","unstructured":"Friedman, D.P., Wise, D.S.: Cons should not evaluate its arguments. In: Proc. 3rd Intl. Colloq. on Automata, Languages and Programming. pp. 256\u2013284 (1976)"},{"key":"7_CR13","doi-asserted-by":"crossref","unstructured":"Garcia, R., Lumsdaine, A., Sabry, A.: Lazy evaluation and delimited control. In: Proc. 36th Symp. on Principles of Programming Languages, pp. 153\u2013164 (2009)","DOI":"10.1145\/1480881.1480903"},{"key":"7_CR14","doi-asserted-by":"crossref","unstructured":"Henderson, P., Morris Jr., J.H.: A lazy evaluator. In: Proc. 3rd Symp. on Principles of Programming Languages, pp. 95\u2013103 (1976)","DOI":"10.1145\/800168.811543"},{"key":"7_CR15","doi-asserted-by":"crossref","unstructured":"Josephs, M.B.: The semantics of lazy functional languages. Theor. Comput. Sci.\u00a068(1) (1989)","DOI":"10.1016\/0304-3975(89)90122-9"},{"key":"7_CR16","doi-asserted-by":"publisher","first-page":"157","DOI":"10.1145\/365230.365257","volume":"9","author":"P.J. Landin","year":"1966","unstructured":"Landin, P.J.: The next 700 programming languages. Comm. ACM\u00a09, 157\u2013166 (1966)","journal-title":"Comm. ACM"},{"key":"7_CR17","doi-asserted-by":"crossref","unstructured":"Launchbury, J.: A natural semantics for lazy evaluation. In: Proc. 20th Symp. on Principles of Programming Languages, pp. 144\u2013154 (1993)","DOI":"10.1145\/158511.158618"},{"key":"7_CR18","unstructured":"Loader, R.: Notes on simply typed lambda calculus. Tech. Rep. ECS-LFCS-98-381, Department of Computer Science, University of Edinburgh (1998)"},{"key":"7_CR19","doi-asserted-by":"crossref","unstructured":"Maraist, J., Odersky, M., Turner, D.N., Wadler, P.: Call-by-name call-by-value, call-by-need, and the linear lambda calculus. In: Proc. 11th Conference on Mathematical Foundations of Programminng Semantics, pp. 370\u2013392 (1995)","DOI":"10.1016\/S1571-0661(04)00022-2"},{"key":"7_CR20","unstructured":"Maraist, J., Odersky, M., Wadler, P.: The call-by-need lambda calculus (unabridged). Tech. Rep. 28\/94, Universit\u00e4t Karlsruhe (1994)"},{"key":"7_CR21","doi-asserted-by":"publisher","first-page":"275","DOI":"10.1017\/S0956796898003037","volume":"8","author":"J. Maraist","year":"1998","unstructured":"Maraist, J., Odersky, M., Wadler, P.: The call-by-need lambda calculus. J. Funct. Program.\u00a08, 275\u2013317 (1998)","journal-title":"J. Funct. Program."},{"key":"7_CR22","unstructured":"Morris, J.H.: Lambda Calculus Models of Programming Languages. Ph.D. thesis, MIT (1968)"},{"issue":"6","key":"7_CR23","doi-asserted-by":"publisher","first-page":"699","DOI":"10.1017\/S0956796809990219","volume":"19","author":"K. Nakata","year":"2009","unstructured":"Nakata, K., Hasegawa, M.: Small-step and big-step semantics for call-by-need. J. Funct. Program.\u00a019(6), 699\u2013722 (2009)","journal-title":"J. Funct. Program."},{"key":"7_CR24","doi-asserted-by":"crossref","unstructured":"Peyton Jones, S.L., Salkild, J.: The spineless tagless g-machine. In: Proc. 4th Conf. on Functional Programming Lang. and Computer Architecture, pp. 184\u2013201 (1989)","DOI":"10.1145\/99370.99385"},{"key":"7_CR25","doi-asserted-by":"publisher","first-page":"125","DOI":"10.1016\/0304-3975(75)90017-1","volume":"1","author":"G.D. Plotkin","year":"1975","unstructured":"Plotkin, G.D.: Call-by-name, call-by-value and the lambda-calculus. Theor. Comput. Sci.\u00a01, 125\u2013159 (1975)","journal-title":"Theor. Comput. Sci."},{"key":"7_CR26","doi-asserted-by":"crossref","unstructured":"Purushothaman, S., Seaman, J.: An adequate operational semantics for sharing in lazy evaluation. In: Proc. 4th European Symp. on Program, pp. 435\u2013450 (1992)","DOI":"10.1007\/3-540-55253-7_26"},{"issue":"3","key":"7_CR27","doi-asserted-by":"publisher","first-page":"231","DOI":"10.1017\/S0956796897002712","volume":"7","author":"P. Sestoft","year":"1997","unstructured":"Sestoft, P.: Deriving a lazy abstract machine. J. Func. Program.\u00a07(3), 231\u2013264 (1997)","journal-title":"J. Func. Program."},{"key":"7_CR28","unstructured":"Wadsworth, C.P.: Semantics and Pragmatics of the Lambda Calculus. Ph.D. thesis, Oxford University (1971)"}],"container-title":["Lecture Notes in Computer Science","Programming Languages and Systems"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-28869-2_7.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,5,4]],"date-time":"2021-05-04T11:13:45Z","timestamp":1620126825000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-28869-2_7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642288685","9783642288692"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-28869-2_7","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012]]}}}