Lazy evaluation is perhaps the most powerful tool for modularization in the functional programmer’s repertoire.
— John Hughes in “Why Functional Programming Matters” (1989)
WE study a variety of parameter-passing mechanisms in this chapter. Concomitantly, we add support for a subset of them to Camille, including pass-by-reference and lazy evaluation. In addition, we reflect on the design decisions we have made and techniques we have used throughout the interpreter implementation process and discuss alternatives.
3.145.166.167