force t forces evaluation of t and returns a deferred that becomes determined
when the deferred computation becomes determined or raises.
wait t and wait_exn t waits for t to be forced. If no one ever calls
force t, they will wait forever.
A monad is an abstraction of the concept of sequencing of computations. A value of type 'a monad represents a computation that returns a value of type 'a.
return v returns the (trivial) computation that returns v.
bind' differs from bind in that the supplied function produces an 'a Deferred.t
rather than an 'a t.
Read-only operations.