[ghc-steering-committee] #390: Fine-grained pragmas, recommendation: accept

Vitaly Bragilevsky bravit111 at gmail.com
Sat Mar 13 09:38:16 UTC 2021


чт, 11 мар. 2021 г. в 16:31, Vladislav Zavialov (int-index) <
vlad.z.4096 at gmail.com>:

> I like the proposal and I would be happy to vote for its acceptance.
> However, it requires a little bit of polishing up with regards to its use
> of modifiers. In particular, it seems to treat modifiers as built-in units,
> whereas the core idea behind modifiers is that they are based on actual
> promoted types (with the exception of %1).
>
> Hence it seems appropriate to send it back for revision until this point
> is addressed.
>

Yes, I agree. There is also another issue. I think we need either a
deprecation story for UndecidableInstances, or a statement that it should
survive with some motivation behind that.

So, I'm sending this proposal back to Alejandro for review and set the
"needs revision" label on GitHub.

Vitaly

>
> - Vlad
>
> > On 20 Feb 2021, at 14:34, Vitaly Bragilevsky <bravit111 at gmail.com>
> wrote:
> >
> > Dear Committee,
> >
> > Our own Alejandro has been proposed
> > Fine-grained pragmas for classes, families, and instances
> > https://github.com/ghc-proposals/ghc-proposals/pull/390
> >
> https://github.com/serras/ghc-proposals/blob/instance-pragmas/proposals/0000-fine-grained-undecidable.md
> >
> > His idea is to bring the flexibility of
> overlaps/overlapping/overlappable pragmas to termination checking, type
> inference, and constraint solving. Alejandro proposes to introduce the
> following %-modifiers (as in already accepted #370,
> https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0370-modifiers.rst
> ):
> > %NoTerminationCheck
> > %LiberalCoverage
> > %LiberalInjectivity
> > %Overlapping
> > %Overlappable
> > %Overlaps
> > to liberate conditions for classes and instances, type families,
> forall-types, etc. The first three modifiers can be used instead of the
> scary-sounding UndecidableInstances extension. The last three modifiers are
> supposed to be used instead of the  overlap*-pragmas for instances we
> already have. Note that this proposal doesn't suggest deprecating those
> extensions and pragmas.
> >
> > I think that this proposal goes in the right direction and recommend
> accepting it.
> >
> > As far as I understand, all the committee members, including those with
> terms about to expire, have the right to either support this proposal or to
> raise a voice against it either here or at
> https://github.com/ghc-proposals/ghc-proposals/pull/390.
> >
> > Regards,
> > Vitaly
> >
> >
> >
> > _______________________________________________
> > ghc-steering-committee mailing list
> > ghc-steering-committee at haskell.org
> > https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20210313/d160914b/attachment.html>


More information about the ghc-steering-committee mailing list