<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 15 Jan 2009, at 16:34, John Goerzen wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Hi folks,<br><br>Don Stewart noticed this blog post on Haskell by Brian Hurt, an OCaml<br>hacker:<br><br><a href="http://enfranchisedmind.com/blog/2009/01/15/random-thoughts-on-haskell/">http://enfranchisedmind.com/blog/2009/01/15/random-thoughts-on-haskell/</a><br><br>It's a great post, and I encourage people to read it. &nbsp;I'd like to<br>highlight one particular paragraph:</div></blockquote><br></div><div>[snip]</div><div>Sorry, I'm not going to refer to that paragraph, instead, I'm going to point out how depressing it is, that the message we're getting across to new haskellers is that "<span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Verdana; font-size: 9px; line-height: 16px; ">Monads, and variations on monads and extensions to monads and operations on monads are the primary way Haskell combines code-". &nbsp;We have loads of beautiful ways of combining code (not least ofc, simple application), why is it than Monad is getting singled out as the one that we must use for everything? &nbsp;</span></div><div><font class="Apple-style-span" color="#333333" face="Verdana" size="1"><span class="Apple-style-span" style="font-size: 9px; line-height: 16px;"><br></span></font></div><div><font class="Apple-style-span" color="#333333" face="Verdana" size="1"><span class="Apple-style-span" style="font-size: 9px; line-height: 16px;">My personal suspicion on this one is that Monad is the one that makes concessions to imperative programmers, by on of its main combinators (&gt;&gt;=) having the type&nbsp;(&gt;&gt;=) :: (Monad m) =&gt; m a -&gt; (a -&gt; m b) -&gt; m b, and not the much nicer type&nbsp;(&gt;&gt;=) :: (Monad m) =&gt; (a -&gt; m b) -&gt; (m a -&gt;&nbsp;m b).</span></font></div><div><font class="Apple-style-span" color="#333333" face="Verdana" size="1"><span class="Apple-style-span" style="font-size: 9px; line-height: 16px;"><br></span></font></div><div><font class="Apple-style-span" color="#333333" face="Verdana" size="1"><span class="Apple-style-span" style="font-size: 9px; line-height: 16px;">Bob</span></font></div></body></html>