
5 Feb
2009
5 Feb
'09
4:40 p.m.
On Thu, Feb 5, 2009 at 10:26 AM,
x >>= f does not mean "apply f to x", it means "do x, and then do f with the result of x". Bind is a sequencing operator rather than an application operator.
Sequencing is a side effect of data dependency. What I should have said is x >>= f means "evaluate x and f (in any order), /then/ apply f to x". In a non-IO monad, x can be discarded if f does not depend on it. -g