<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body><div><div style="font-family: Calibri,sans-serif; font-size: 11pt;">I would be unhappy if GHC included gratuitous differences from the Haskell spec by default. It's hard enough for people working on alternative Haskell implementations as is, stepping away from the spec would be a movie in the wrong direction.</div></div><div dir="ltr"><hr><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Från: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;"><a href="mailto:mantkiew@gsd.uwaterloo.ca">Michal Antkiewicz</a></span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Skickat: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;">‎2015-‎09-‎08 16:10</span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Till: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;"><a href="mailto:haskell-cafe@haskell.org">Haskell Cafe</a></span><br><span style="font-family: Calibri,sans-serif; font-size: 11pt; font-weight: bold;">Ämne: </span><span style="font-family: Calibri,sans-serif; font-size: 11pt;">Re: [Haskell-cafe] GHC Extension Proposal: ArgumentBlock</span><br><br></div><div dir="ltr">+1 for the change but not for an extension. Here's why<div><br></div><div>1. I remember when I was new to Haskell, having to add $ confused me a lot. It caused a lot of frustration, some errors I didn't understand, which didn't help me realize that $ was needed. I still vividly remember the pain....</div><div><br></div><div>2. It seems the change is fully backwards compatible and it does not prevent people still using the old style if they wanted. I would make it a default, not an extension.</div><div><br></div><div>3. In order to verify backwards compatibility, I would generate Core output for all of Hackage with both the current and the new compilers and check that Core remains identical. That would be a conclusive proof to me.</div><div><br></div><div>4. Regarding the other mentioned extensions like multiway if, etc. they should become default as well because they are backwards compatible as well. </div><div><br></div><div>5. The only reason to guard changes behind LANGUAGE pragmas should be when they are causing problems with other extensions.</div><div><br></div><div>I too feel that Haskell community is becoming more and more conservative. I believe there's still time now to make the language as best it can be at the cost of loosing backwards compatibility. The rapid improvements in the language is what attracts me to Haskell.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Best,<br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div>Michał </div></div></div></div>
<br><div class="gmail_quote">On Tue, Sep 8, 2015 at 12:56 AM, Andrew Gibiansky <span dir="ltr"><<a href="mailto:andrew.gibiansky@gmail.com" target="_blank">andrew.gibiansky@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;"><div dir="ltr">In order to get a feel for  using this extension in real-world Haskell, take a look at the new ghc-reskin package:<div><br></div><div><a href="https://github.com/gibiansky/ghc-reskin" target="_blank">https://github.com/gibiansky/ghc-reskin</a><br></div><div><br></div><div>This allows you to use ArgumentBlock *today* by passing GHC a few parameters to tell it to use ghc-reskin as a preprocessor. Take a look at the README for a full example.</div><div><br></div><div>-- Andrew</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 7, 2015 at 9:02 PM, Bardur Arantsson <span dir="ltr"><<a href="mailto:spam@scientician.net" target="_blank">spam@scientician.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; padding-left: 1ex; border-left-color: rgb(204, 204, 204); border-left-width: 1px; border-left-style: solid;"><span><span>On 09/08/2015 03:08 AM, Dan Burton wrote:<br>
> +1 people who like it can use it and people who don't like it don't have to<br></span>
> use it. Personally I wish it were the default because the superfluous $<br>
> confuses a lot of people coming from other languages like Ruby.<br>
><br>
<br>
</span>Whether it's "superfluous" depends entirely on one's PoV.<br>
<span><br>
> You can even write in the old style if you have the extension turned on. It<br>
> doesn't disable the old way of doing things. It just allows a new way. It's<br>
> entirely backwards compatible with working code when turned on, is it not?<br>
><br>
<br>
</span>Except now there are two "dialects" everybody has to read/understand.<br>
That's not progress IMO. (Considering that it's so little gain. I really<br>
don't understand the hatred of $ that some people seem to have.)<br>
<br>
Regards,<span><br>
<div><div><br>
<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" target="_blank" rel="noreferrer">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
</div></div></span></blockquote></div><br></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" target="_blank" rel="noreferrer">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
<br></blockquote></div><br></div></div>
</body></html>