## 1

### Abstract

doi:10.1017/S0956796809990219

### Citations

187 | A call-by-need lambda calculus
- Ariola, Felleisen, et al.
- 1995
(Show Context)
Citation Context ...licitly performed. It should be noted that Ariola and Felleisen already observed that Launchbury’s formalization has hidden flattening of a heap in his Variable rule, which amounts to applying assoc (=-=Ariola & Felleisen 1997-=-). Lemma 2.4 If 〈Σ〉 M is well-formed and ⊢〈Σ〉 M ⇓〈Σ ′ 〉 V , then 〈Σ ′ 〉 V is well-formed. Proof By induction on the derivation of ⊢〈Σ〉 M ⇓〈Σ ′ 〉 V . � Simple induction proves the instrumented natural ... |

181 | A Natural Semantics for Lazy Evaluation - Launchbury - 1993 |

133 | Full abstraction in the lazy lambda calculus
- Abramsky, Ong
- 1993
(Show Context)
Citation Context ...We define the denotational semantics for pure expressions of λletrec. An expression is pure if it does not contain black holes. The denotational semantics models functions by a lifted function space (=-=Abramsky & Ong 1993-=-). We represent lifting using Fn and projection using ↓Fn (written as a postfix operator). Let Values be some appropriate domain containing at least a lifted version of its own function space. Environ... |

67 | Deriving a lazy abstract machine
- Sestoft
- 1997
(Show Context)
Citation Context ...Ψ〉 M of a heap and an expression. A configuration 〈x1 ↦→ M1,...,xn ↦→ Mn〉 N is closed if FV (N) ⊆ {x1,...,xn}, and FV (Mi) ⊆ {x1,...,xi−1} for any i in 1,...,n. Borrowing from Sestoft’s nomenclature (=-=Sestoft 1997-=-), we say a configuration 〈x1 ↦→ M1,...,xn ↦→ Mn〉 N is X-good if x1,...,xn are pairwise distinctly named and {x1,...,xn} and X are disjoint. The judgement 〈Ψ〉 M ⇓X 〈Φ〉 V is promising if 〈Ψ〉 M is close... |

42 | The call-by-need lambda calculus - Maraist, Odersky, et al. - 1998 |

39 |
The Revised 6 Report on the Algorithmic Language Scheme
- Sperber
- 2007
(Show Context)
Citation Context ... paper (Nakata & Hasegawa 2009) considers an extension of λletrec with pairs and a call-by-value variant with lazy letrec. The variant can emulate the delay and force operators as provided in Scheme (=-=Sperber et al. 2009-=-), or OCaml’s equivalent lazy and force (Leroy et al. 2008), by let rec x be M in λx ′ .x for delay(M) and M(λx.x) forforce(M). For instance, the initialization graphs of Syme (2005), which underlie t... |

35 | Cyclic Lambda Graph Rewriting - Ariola, Klop - 1994 |

30 | call-by-value and the λ-calculus. Theoret - Plotkin - 1975 |

17 | Call-by-need and continuationpassing style - Okasaki, Lee, et al. - 1994 |

17 | Initializing mutually referential abstract objects: The value recursion challenge - Syme - 2005 |

13 | Defunctionalized interpreters for programming languages - Danvy - 2008 |

11 | Lazy evaluation and delimited control - Garcia, Lumsdaine, et al. - 2009 |

8 | Small-step and big-step semantics for call-by-need
- Nakata, Hasegawa
(Show Context)
Citation Context ...rategy with minor modifications. Below we only recall the necessary definitions from his paper to state main propositions; we refer the details to his original paper and the extended version of ours (=-=Nakata & Hasegawa 2009-=-). We define the denotational semantics for pure expressions of λletrec. An expression is pure if it does not contain black holes. The denotational semantics models functions by a lifted function spac... |

2 |
The Objective Caml system, release 3.11 [online]. Available at: http://caml.inria.fr/ (Accessed 29
- Leroy, Doligez, et al.
- 2008
(Show Context)
Citation Context ...etrec with pairs and a call-by-value variant with lazy letrec. The variant can emulate the delay and force operators as provided in Scheme (Sperber et al. 2009), or OCaml’s equivalent lazy and force (=-=Leroy et al. 2008-=-), by let rec x be M in λx ′ .x for delay(M) and M(λx.x) forforce(M). For instance, the initialization graphs of Syme (2005), which underlie the object initialization strategy of F# (Syme & Margetson ... |

2 |
The F# programming language [online]. Available at: http://research.microsoft.com/en-us/um/people/curtisvv/fsharp_default.aspx (Accessed 29
- Syme, Margetson
- 2008
(Show Context)
Citation Context ...Leroy et al. 2008), by let rec x be M in λx ′ .x for delay(M) and M(λx.x) forforce(M). For instance, the initialization graphs of Syme (2005), which underlie the object initialization strategy of F# (=-=Syme & Margetson 2008-=-), fit in the call-by-value variant extended with n-tuples, or records. Acknowledgments We thank the anonymous referees for their careful reviewing and Matthias Felleisen for his editorial support. Ke... |