Why can't arguments be levity polymorphic for inline functions?

Chris Smith cdsmith at gmail.com
Fri Oct 8 14:54:32 UTC 2021


On Fri, Oct 8, 2021 at 10:51 AM Ben Gamari <ben at smart-cactus.org> wrote:

> In my mind the fundamental problem with this approach is that it means
> that a program's acceptance by the compiler hinges upon pragmas.
> This is a rather significant departure from the status quo, where one
> can remove all pragmas and still end up with a well-formed program.
> In this sense, pragmas aren't really part of the Haskell language but
> are rather bits of interesting metadata that the compiler may or may not
> pay heed to.
>

I don't believe this is really the status quo.  In particular, the pragmas
relating to overlapping instances definitely do affect whether a program
type-checks or not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20211008/a0da9962/attachment.html>


More information about the ghc-devs mailing list