Small-step and big-step semantics for call-by-need
Keiko Nakata, Masahito Hasegawa

TL;DR
This paper introduces natural big-step semantics with global heaps for call-by-need lambda calculus, proving their equivalence to existing small-step reduction semantics for both acyclic and cyclic cases.
Contribution
It presents a novel natural semantics framework for call-by-need evaluation, establishing formal equivalence with reduction semantics and extending previous work to cyclic calculi.
Findings
Natural semantics for acyclic call-by-need revised and validated.
Natural semantics for cyclic call-by-need proposed and connected to denotational semantics.
Equivalence between natural and reduction semantics established for both calculi.
Abstract
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. 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 et al. 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 and Sestoft and we state its adequacy using a denotational semantics in the style…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Logic, Reasoning, and Knowledge · Advanced Software Engineering Methodologies
