Like point free notation, I worry about what somebody somewhere is doing to it.... :)<br><br>The existence of a well understood community standard (add a type signature to your functions and only use monad operators with the laws) helps a lot - but both pieces are optional. I suppose the shorter and more declarative nature of Haskell functions makes it a less urgent point though.
<br><br><br><div><span class="gmail_quote">On 4/16/07, <b class="gmail_sendername">Donald Bruce Stewart</b> <<a href="mailto:dons@cse.unsw.edu.au">dons@cse.unsw.edu.au</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
clifford.beshers:<br>><br>> Donald Bruce Stewart wrote:<br>><br>> david:<br>><br>><br>> Ah... so the secret is in the hidden variables. On some<br>> level I am beginning to fear that Monads resurrect some of
<br>> the scariest aspects of method overriding from my OO<br>> programming days. Do you (all) ever find that the ever<br>> changing nature of >>= makes code hard to read?<br>><br>><br>> You always know which monad you're in though, since its in the type.
<br>> And the scary monads aren't terribly common anyway.<br>><br>><br>> Also, the monad laws impose a level of sanity that most OO<br>> frameworks do not, right?<br><br>Ah yes, and we have the 3 laws of monads. If you break these , the monad
<br>police will come and lock you up.<br><br>-- Don<br></blockquote></div><br>