<div dir="ltr">Trac: <a href="https://ghc.haskell.org/trac/ghc/ticket/10843">https://ghc.haskell.org/trac/ghc/ticket/10843</a><div><br></div><div><div class="">
<p>I would like the following to be valid Haskell code:
</p>
<div class=""><pre><span class="">main</span> <span class="">=</span> when <span class="">True</span> <span class="">do</span>
  putStrLn <span class="">"Hello!"</span>
</pre></div><p>
Instead of requiring a dollar sign before the "do". This would parse as
</p>
<div class=""><pre><span class="">main</span> <span class="">=</span> when <span class="">True</span> <span class="">(</span><span class="">do</span>
  putStrLn <span class="">"Hello!"</span><span class="">)</span></pre><pre><span class=""><br></span></pre><pre><span class="" style="white-space:normal"><font face="arial, sans-serif">Has this been tried before? It seems fairly simple -- is there some complexity I'm missing? I've always been confused as to why the parser requires `$` there, and I've heard a lot of others ask about this as well. Perhaps we could fix that?</font></span></pre><pre><span class="" style="white-space:normal"><font face="arial, sans-serif"><br></font></span></pre><pre><span class="" style="white-space:normal"><font face="arial, sans-serif">PS. Regardless of whether this goes anywhere, it was fun to learn how to hack on GHC. It was surprisingly easy; I wrote up my experience <a href="http://rawgit.com/gibiansky/4c54f767bf21a6954b23/raw/67c62c5555f40c6fb67b124307725df168201361/exp.html">here</a>. The GHC wiki is outstanding; pretty much every intro question about ghc development I had was answered on a fairly easy-to-find wiki age. (Except for some stuff related to generating documentation and docbook, but whatever.)</font></span></pre></div></div></div></div>