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

Vladislav Zavialov (int-index) vlad.z.4096 at gmail.com
Thu Mar 11 13:31:22 UTC 2021


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.

- 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



More information about the ghc-steering-committee mailing list