<div dir="ltr"><div class="gmail_default" style="font-family:tahoma,sans-serif">I'm in support of this proposal. </div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br>There is some discussion around the corners but lets get it done!</div><div class="gmail_default" style="font-family:tahoma,sans-serif"><br></div><div class="gmail_default" style="font-family:tahoma,sans-serif">Simon</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Mon, 23 Jun 2025 at 14:12, Malte Ott via ghc-steering-committee <<a href="mailto:ghc-steering-committee@haskell.org">ghc-steering-committee@haskell.org</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">Dear Committee,<br>
<br>
On 2024-10-29 19:45, Adam Gundry wrote:<br>
> Trevis Elser proposes a classification of (some) language extensions based<br>
> on previous work in proposal #601 establishing categories:<br>
> <br>
> <a href="https://github.com/ghc-proposals/ghc-proposals/pull/669" rel="noreferrer" target="_blank">https://github.com/ghc-proposals/ghc-proposals/pull/669</a><br>
> <br>
> <a href="https://github.com/telser/ghc-proposals/blob/initial-extension-categorization/proposals/0000-extension-categorization.md" rel="noreferrer" target="_blank">https://github.com/telser/ghc-proposals/blob/initial-extension-categorization/proposals/0000-extension-categorization.md</a><br>
<br>
(Note that additionally to adding the new proposal the PR also contains a small diff to the previous proposal #601.)<br>
<br>
This proposal rested for a while, but after some revisions at Zurihac I am<br>
recommending to accept this proposal. The proposal is the logical next step after<br>
the acceptance of #601. It’s not pretty to have a categorization but not use it<br>
and I think the classification is very helpful to guide users and us.<br>
<br>
In the proposal Trevis nominates<br>
<br>
72 extensions as stable,<br>
10 extensions as deprecated,<br>
5 extensions as legacy,<br>
8 extensions as experimental<br>
<br>
and<br>
<br>
42 remain unclassified.<br>
<br>
This only affects documentation and our future decisions. Only observable<br>
change in GHC will be that deprecated extensions consistently get a warning<br>
via -Wdeprecated-flags.<br>
<br>
The intention is to basically just describe the status quo with the<br>
classification and defer all contentious extensions to be classified later.<br>
<br>
My general tendency is that we should err in the direction of marking<br>
extensions stable because at least for widely used extensions, even those where<br>
we are not very happy with the design, marking them experimental is like giving<br>
us a free pass to break our stability principle. Also marking an extension<br>
stable is not the same as "recommended" as it is perfectly fine for an extension<br>
to be stable but not part of a GHCXXXX language edition.<br>
<br>
Note that "For an extension to be classified as Stable it must be considered<br>
Stable when used in combination of all possible, non-mutually exclusive,<br>
extensions that are already Stable." I admit that I cannot judge this with<br>
certainty for all listed extensions. To be honest I learned e.g. of the<br>
existence of NoTraditionalRecordSyntax from reading the list. While I have been<br>
told that the categorization has been produced in close collaboration with GHC<br>
devs I ask everyone to keep this in mind when reviewing the list.<br>
<br>
Please review the overall proposal and the proposed categories. You can give<br>
your approval conditional on moving some extensions to "unclassified". Others<br>
and I have already done so, so from my point of view the list is good as is.<br>
<br>
Best,<br>
Malte<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>