A delayed computation that can produce a deferred.
Nothing happens with a lazy deferred unless one force
s it. Forcing a lazy deferred
starts the computation, which will eventually cause the deferred to become determined.
As usual with laziness, multiply forcing a lazy deferred is no different than forcing
it a single time.
Exceptions (both synchronous and asynchronous) raised by a delayed computation are
returned by force
(wait
, peek
, etc.), or will be raised to the monitor in effect
when force_exn
(wait_exn
, peek_exn
, etc.) was called.
follow t f
returns a new lazy deferred almost like bind'
with the notable
difference that its computation will start as soon as the deferred it is following
becomes determined
. Since the resulting deferred depends on the 'a
value computed
by t
forcing the resulting of follow
will force the compuation of t
.
Read-only operations.