transformers 0.4: change in accessor function exports?

Michael Snoyman michael at snoyman.com
Tue May 6 16:16:40 UTC 2014


One of the changes[1] in transformers 0.4 is as follows:

0.3:

    newtype Identity a = Identity { runIdentity :: a }

0.4:

    newtype Identity a = Identity a
    runIdentity (Identity x) = x

While this may seem benign, I've already seen three cases where this caused
breakage[2][3][4].

Is there a reason for this change in 0.4? If not, I'd like to request
moving back to the previous formulation to avoid unnecessary breakage.

Michael

[1]
http://hdiff.luite.com/cgit/transformers/commit/Data/Functor/Identity.hs?id=cabf26451206cf1e223970b2df846132300c04d9&ss=1
[2] https://github.com/fpco/streaming-commons/pull/5
[3] https://github.com/ekmett/exceptions/pull/29
[4]
https://github.com/ekmett/mtl/commit/d1a6253886a99215d5ff6afe3632b27e696d40b3
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/libraries/attachments/20140506/d557cf05/attachment.html>


More information about the Libraries mailing list