<div dir="ltr">This has come up before as 'ArgumentDo':<div><a href="goog_349057786"><br></a></div><div>mailing list thread: <a href="https://mail.haskell.org/pipermail/ghc-devs/2015-September/009821.html">Proposal: ArgumentDo</a><br></div><div><a href="https://phabricator.haskell.org/D1219">Relevant Phabricator ticket</a><br></div><div><a href="https://www.reddit.com/r/haskell/comments/447bnw/does_argument_do_have_a_future/">Reddit discussion</a><br></div><div><br></div><div>Some people like it, though enough don't that the extension was abandoned. </div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div>Matt Parsons</div></div></div></div>
<br><div class="gmail_quote">On Sun, Feb 28, 2016 at 6:20 PM, Jonne Ransijn <span dir="ltr"><<a href="mailto:yoyoyonny@gmail.com" target="_blank">yoyoyonny@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Dear Haskell-Cafe mailing list people (?)<div>I've been writing parenthesis around do blocks since forever now, but I don't get why they are necessary. I can't seem to come up with a program where they are necessary. Am I missing something or are parenthesis around do blocks nececairy for no reason? Since parsing 'do' blocks as if they have parenthesis around them doesn't seem to break any code, why not do so?</div><div><br></div><div> when (doBlocksNeedParenthesis) do putStrLn "This code is invalid."</div><div><br></div><div> when (doBlocksNeedParenthesis) $ do putStrLn "This code is valid."</div><div><br></div><div> when (doBlocksHaveInvisibleParenthesis) do putStrLn "These are equal v"</div><div><br></div><div> when (doBlocksHaveInvisibleParenthesis) (do putStrLn "These are equal ^")<br></div></div>
<br>_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div><br></div>