overloaded-records v0.4.2.0 Release Notes

Release Date: 2016-08-17 // over 7 years ago
    • Rec instances for Eq1, Ord1, Show1, Eq, Ord, and Show. Instances for Eq1, Ord1 and Show1 are available only with transformers ==0.5.* or with base >=4.9 (i.e. GHC >=8). (new)
    • Introducing WrappedLensLike data type along with a simplified type WrappedLensLike'. For each of these we have corresponding lns and lns' operation for unpacking WrappedLensLike. (new)
      • lns :: WrappedLensLike f s t a b -> (a -> f b) -> s -> f t
      • lns' :: WrappedLensLike' f s a -> (a -> f a) -> s -> f s
    • 👍 Allowing fields\/accessors to occur in multiple data constructors by not creating duplicit instances, thanks to Andy Morris. See pull request #2. (change)
    • Data type Label (l :: Symbol) that can be used to pass label value around. (new)
    • Instances for fst, snd, thd and curry fields for 11-tuples, 12-tuples up to 15-tuples. (new)
    • 🆕 Instances for head and tail fields for NonEmpty list. (new)
    • Instances for HasField and ModifyField Rec context r where r is monomorphic. This is just a poor man's instance, since its usability is very limited, but helpful in those special cases. Hopefully we will be able to find a way how to define overloaded records machinery for Rec context r in general. (new)

Previous changes from v0.4.1.0

    • 🆕 Introducing Getter newtype along with get function. (new)
      • get :: Getter s a -> s -> a
    • Introducing Rec data type that allows passing polymorphic record along with its instances as a normal value. (new)
    • 🔄 Corrections and updates in documentation (change)
    • Uploaded to [Hackage][]: http://hackage.haskell.org/package/overloaded-records-