[Haskell-cafe] Package Versioning Policy

Brandon Allbery allbery.b at gmail.com
Thu Jan 5 19:14:30 CET 2012


On Thu, Jan 5, 2012 at 12:30, Christoph Breitkopf <
chbreitkopf at googlemail.com> wrote:

> On Thu, Jan 5, 2012 at 6:15 PM, Johan Tibell <johan.tibell at gmail.com>wrote:
>
>> >> c) You are not allowed to add new instances. I don't get this - how is
>> >> this any worse than b)?
>>
>> You cannot prevent the import of new instances. When you import a
>> module you get all its instances. This means that explicit import
>> lists can't protect you.
>
>
> What I don't get is how a new instance may break existing code. Any
> example?
>

It's not unusual for people to define their own instances for things; if a
new release of the library then adds its own version of those instances,
even if they are identical, then those people's code will break.  Google
"orphan instances" to see both general and concrete discussion of the
problem.

I'm blanking on recent practical examples, but there have been some.

-- 
brandon s allbery                                      allbery.b at gmail.com
wandering unix systems administrator (available)     (412) 475-9364 vm/sms
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20120105/3bdcc9ac/attachment-0001.htm>


More information about the Haskell-Cafe mailing list