{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,26]],"date-time":"2026-05-26T23:05:42Z","timestamp":1779836742091,"version":"3.53.1"},"reference-count":17,"publisher":"Cambridge University Press (CUP)","issue":"6","license":[{"start":{"date-parts":[[2009,9,7]],"date-time":"2009-09-07T00:00:00Z","timestamp":1252281600000},"content-version":"unspecified","delay-in-days":0,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["J. Funct. Prog."],"published-print":{"date-parts":[[2009,11]]},"abstract":"<jats:title>Abstract<\/jats:title>\n                  <jats:p>\n                    We present natural semantics for acyclic as well as cyclic call-by-need lambda calculi, which are proved equivalent to the reduction semantics given by Ariola and Felleisen (\n                    <jats:italic>J. Funct. Program.<\/jats:italic>\n                    , vol. 7, no. 3, 1997). The natural semantics are big-step and use global heaps, where evaluation is suspended and memorized. The reduction semantics are small-step, and evaluation is suspended and memorized locally in let-bindings. Thus two styles of formalization describe the call-by-need strategy from different angles. The natural semantics for the acyclic calculus is revised from the previous presentation by Maraist\n                    <jats:italic>et al<\/jats:italic>\n                    . (\n                    <jats:italic>J. Funct. Program.<\/jats:italic>\n                    , vol. 8, no. 3, 1998), and its adequacy is ascribed to its correspondence with the reduction semantics, which has been proved equivalent to call-by-name by Ariola and Felleisen. The natural semantics for the cyclic calculus is inspired by that of Launchbury (1993) and Sestoft (1997), and we state its adequacy using a denotational semantics in the style of Launchbury; adequacy of the reduction semantics for the cyclic calculus is in turn ascribed to its correspondence with the natural semantics.\n                  <\/jats:p>","DOI":"10.1017\/s0956796809990219","type":"journal-article","created":{"date-parts":[[2009,9,7]],"date-time":"2009-09-07T08:19:22Z","timestamp":1252311562000},"page":"699-722","source":"Crossref","is-referenced-by-count":15,"title":["Small-step and big-step semantics for call-by-need"],"prefix":"10.1017","volume":"19","author":[{"given":"KEIKO","family":"NAKATA","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"MASAHITO","family":"HASEGAWA","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"56","published-online":{"date-parts":[[2009,9,7]]},"reference":[{"key":"S0956796809990219_ref12","doi-asserted-by":"publisher","DOI":"10.1016\/0304-3975(75)90017-1"},{"key":"S0956796809990219_ref9","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796898003037"},{"key":"S0956796809990219_ref5","volume-title":"Proceedings of the International Conference on Functional Programming","author":"Danvy","year":"2008"},{"key":"S0956796809990219_ref16","doi-asserted-by":"crossref","unstructured":"Syme D. & Margetson J. (2008) The F# programming language [online]. Available at: http:\/\/research.microsoft.com\/en-us\/um\/people\/curtisvv\/fsharp_default.aspx (Accessed 29 July 2009).","DOI":"10.1145\/1291220.1291159"},{"key":"S0956796809990219_ref7","volume-title":"Proceedings of the ACM SIGPLAN-SIGACT Symposium on the Principles of Programming Languages","author":"Launchbury","year":"1993"},{"key":"S0956796809990219_ref10","unstructured":"Nakata K. & Hasegawa M. (2009) Small-step and big-step semantics for call-by-need (extended version). ArXiv:0907.4640v1 [cs.PL]."},{"key":"S0956796809990219_ref13","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796897002712"},{"key":"S0956796809990219_ref2","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796897002724"},{"key":"S0956796809990219_ref4","first-page":"416","volume-title":"Proceedings of the Symposium on Logic in Computer Science","author":"Ariola","year":"1994"},{"key":"S0956796809990219_ref1","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1993.1044"},{"key":"S0956796809990219_ref8","unstructured":"Leroy X. , Doligez D. , Garrigue J. , R\u00e9my D. & Vouillon J. (2008) The Objective Caml system, release 3.11 [online]. Available at: http:\/\/caml.inria.fr\/ (Accessed 29 July 2009)."},{"key":"S0956796809990219_ref14","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796809990074"},{"key":"S0956796809990219_ref17","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1994.1093"},{"key":"S0956796809990219_ref15","doi-asserted-by":"publisher","DOI":"10.1016\/j.entcs.2005.11.038"},{"key":"S0956796809990219_ref11","doi-asserted-by":"publisher","DOI":"10.1007\/BF01019945"},{"key":"S0956796809990219_ref3","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0014548"},{"key":"S0956796809990219_ref6","volume-title":"Proceedings of the ACM SIGPLAN-SIGACT Symposium on the Principles of Programming Languages","author":"Garcia","year":"2009"}],"container-title":["Journal of Functional Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S0956796809990219","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,5,26]],"date-time":"2026-05-26T22:36:20Z","timestamp":1779834980000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S0956796809990219\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009,9,7]]},"references-count":17,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2009,11]]}},"alternative-id":["S0956796809990219"],"URL":"https:\/\/doi.org\/10.1017\/s0956796809990219","relation":{},"ISSN":["0956-7968","1469-7653"],"issn-type":[{"value":"0956-7968","type":"print"},{"value":"1469-7653","type":"electronic"}],"subject":[],"published":{"date-parts":[[2009,9,7]]}}}