<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">I'm happy with this updated proposal, though I've made a small suggestion about making the ;s optional.<div class=""><br class=""></div><div class="">Regardless of whether this suggestion is taken, I support acceptance.</div><div class=""><br class=""></div><div class="">Thanks,</div><div class="">Richard<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Jul 4, 2021, at 5:12 AM, Vitaly Bragilevsky <<a href="mailto:bravit111@gmail.com" class="">bravit111@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="">Dear Committee, <br class=""></div><div class=""><br class=""></div><div class="">I'm happy to repeat my recommendation to accept Alejandro's proposal which is now back from revision:<br class=""></div>Fine-grained pragmas for classes, families, and instances<br class=""><div class=""><div class=""><a href="https://github.com/ghc-proposals/ghc-proposals/pull/390" rel="noreferrer" target="_blank" class="">https://github.com/ghc-proposals/ghc-proposals/pull/390</a><br class=""><a href="https://github.com/serras/ghc-proposals/blob/instance-pragmas/proposals/0000-fine-grained-undecidable.md" rel="noreferrer" target="_blank" class="">https://github.com/serras/ghc-proposals/blob/instance-pragmas/proposals/0000-fine-grained-undecidable.md</a></div><div class=""><br class=""></div><div class="">All the issues that arose in the previous discussion are now resolved. Does anyone have something to add? <br class=""></div><div class=""><br class=""></div><div class="">Vitaly<br class=""></div><div class=""><br class=""></div><div class=""><br class=""></div></div></div><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">сб, 13 мар. 2021 г. в 12:38, Vitaly Bragilevsky <<a href="mailto:bravit111@gmail.com" class="">bravit111@gmail.com</a>>:<br class=""></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" class=""><div dir="ltr" class=""></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">чт, 11 мар. 2021 г. в 16:31, Vladislav Zavialov (int-index) <<a href="mailto:vlad.z.4096@gmail.com" target="_blank" class="">vlad.z.4096@gmail.com</a>>:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">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).<br class="">
<br class="">
Hence it seems appropriate to send it back for revision until this point is addressed.<br class=""></blockquote><div class=""><br class=""></div>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. <div class=""><br class=""></div><div class="">So, I'm sending this proposal back to Alejandro for review and set the "needs revision" label on GitHub.</div><div class=""><br class=""></div><div class="">Vitaly </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br class="">
- Vlad<br class="">
<br class="">
> On 20 Feb 2021, at 14:34, Vitaly Bragilevsky <<a href="mailto:bravit111@gmail.com" target="_blank" class="">bravit111@gmail.com</a>> wrote:<br class="">
> <br class="">
> Dear Committee,<br class="">
> <br class="">
> Our own Alejandro has been proposed<br class="">
> Fine-grained pragmas for classes, families, and instances<br class="">
> <a href="https://github.com/ghc-proposals/ghc-proposals/pull/390" rel="noreferrer" target="_blank" class="">https://github.com/ghc-proposals/ghc-proposals/pull/390</a><br class="">
> <a href="https://github.com/serras/ghc-proposals/blob/instance-pragmas/proposals/0000-fine-grained-undecidable.md" rel="noreferrer" target="_blank" class="">https://github.com/serras/ghc-proposals/blob/instance-pragmas/proposals/0000-fine-grained-undecidable.md</a><br class="">
> <br class="">
> 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, <a href="https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0370-modifiers.rst" rel="noreferrer" target="_blank" class="">https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0370-modifiers.rst</a>):<br class="">
> %NoTerminationCheck<br class="">
> %LiberalCoverage<br class="">
> %LiberalInjectivity<br class="">
> %Overlapping<br class="">
> %Overlappable<br class="">
> %Overlaps<br class="">
> 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.<br class="">
> <br class="">
> I think that this proposal goes in the right direction and recommend accepting it.<br class="">
> <br class="">
> 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 <a href="https://github.com/ghc-proposals/ghc-proposals/pull/390" rel="noreferrer" target="_blank" class="">https://github.com/ghc-proposals/ghc-proposals/pull/390</a>.<br class="">
> <br class="">
> Regards,<br class="">
> Vitaly<br class="">
> <br class="">
> <br class="">
> <br class="">
> _______________________________________________<br class="">
> ghc-steering-committee mailing list<br class="">
> <a href="mailto:ghc-steering-committee@haskell.org" target="_blank" class="">ghc-steering-committee@haskell.org</a><br class="">
> <a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee" rel="noreferrer" target="_blank" class="">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee</a><br class="">
<br class="">
</blockquote></div></div>
</blockquote></div>
_______________________________________________<br class="">ghc-steering-committee mailing list<br class=""><a href="mailto:ghc-steering-committee@haskell.org" class="">ghc-steering-committee@haskell.org</a><br class="">https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee<br class=""></div></blockquote></div><br class=""></div></body></html>