We need to add role annotations for 7.8

Mark Lentczner mark.lentczner at gmail.com
Mon Mar 24 15:26:14 UTC 2014

Thanks for the pointers, Simon. I appologize for coming to this quite so
late... I didn't realize the global impact of this feature.

>From a "meaning" perspective, I'm agnostic on the default.
>From a "engineering" perspective, I want a default that "does a good
enough, reasonably safe thing" if programmers ignore the feature.

The later is subtle as there are different vantage points for different
developers. In the Platform, we have many libraries that we are encouraging
both end-programmers, and other library authors to make use of and depend
on extensively. This means those libraries have to work for both
programmers that are ignoring the feature, and those that use it. In that
later case, there is the even more subtle distinction of those that use the
feature for their own code, and those that use it in libraries they make

The later case is issue: It seems a real mess if a library author who
wanted to use the new feature, had to circumvent a HP library because it
didn't annotate. Similar thought experiment: What would be the downside if
containers didn't annotate? Would that just make the feature unusable
because everything uses containers?

To put it more directly: with the satus-quo default of representations,
what is the down side if a library, a widely used library, doesn't bother
to annotate? What would be the loss if containers didn't annotate? (I know
it did, this is the thought experiment... because I've got 30+ libraries in
HP that are in this boat.)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140324/f6425041/attachment-0001.html>

More information about the ghc-devs mailing list