Lazy Library
The (scheme lazy) library exports procedures and syntax keywords for lazy evaluation.
For more information see the R7RS Scheme Specification.
delay
(delay {expression})
Return a promise object that can be asked in the future (via force) to evaluate {expression} and return the result.
force
(force promise)
Force the value of a promise.
delay-force
(delay-force {expression})
make-promise
(make-promise obj)
Return a promise which will return obj when forced. This function is similar to delay but does not delay its argument: it is a procedure rather than syntax. If obj is already a promise, it is returned.
promise
(promise? obj)
Returns #t if object is a promise, and #f otherwise.
