<div dir="ltr"><div dir="ltr">On Thu, 17 Dec 2020 at 08:15, Spiwack, Arnaud <<a href="mailto:arnaud.spiwack@tweag.io">arnaud.spiwack@tweag.io</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>I don't agree with this sentiment at all, to be honest. In my opinion, the ultimate fate of every extension is to be rolled into the standard or to be relegated to the bins of history. The idea of having various levels of languages based on how advanced they are perceived to be sounds extraordinary to me (also quite a bit patronising). <br></div><div><br></div><div>Generally speaking, you opt in to a feature by using it. GHC2021 should not have features that we, as a community, don't recommend using (the bins-of-history ones); but, surely, TypeFamilies is not one of these. It is not to say that GHC2021 should have TypeFamilies, but that them being perceived as advanced is not, in my opinion, a relevant criterion. We should be asking, instead, whether it is ready.<br></div></div></blockquote><div><br></div><div>I strongly agree with Arnuad here.</div><div><br></div><div>Cheers</div><div>Simon</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 15, 2020 at 10:22 PM Richard Eisenberg <<a href="mailto:rae@richarde.dev" target="_blank">rae@richarde.dev</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi all,<br>
<br>
In thinking about how I feel about TypeFamilies (and why I lean against inclusion), I realized I had a new criterion:<br>
<br>
* GHC2021 extensions should be sufficient for early-intermediate Haskellers<br>
<br>
Today, users have to enable a number of extensions just to get basic work done (I'm looking at you, FlexibleContexts). So they learn just to take whatever suggestion is presented to them in an error message and apply it.<br>
<br>
But if extensions were considered more exotic, then users might not be so willing to add an extension. They would have to consider whether they really want to opt into more challenging error messages and a wider horizon. TypeFamilies is an extension that significantly widens the horizon, but also invites new scary error messages. I think it should be opt in. But this gatekeeping works only if users will be thoughtful about enabling the extension; thus my new criterion.<br>
<br>
What do we think about this?<br>
<br>
(I thought of putting this on Kialo, but it didn't seem to fit the setup there. Maybe I've erred in not just blasting ahead.)<br>
<br>
Richard<br>
_______________________________________________<br>
ghc-steering-committee mailing list<br>
<a href="mailto:ghc-steering-committee@haskell.org" target="_blank">ghc-steering-committee@haskell.org</a><br>
<a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer" target="_blank">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br>
</blockquote></div>
_______________________________________________<br>
ghc-steering-committee mailing list<br>
<a href="mailto:ghc-steering-committee@haskell.org" target="_blank">ghc-steering-committee@haskell.org</a><br>
<a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer" target="_blank">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br>
</blockquote></div></div>