• Moremi Vannak's avatar
    [#69] Replace `Wrapped` with custom typeclass that allows `deriving anyclass` · f8b5f146
    Moremi Vannak authored
    Problem: `Wrapped` is a thing from `lens` which allows understanding newtype content.
    It would be nice to replace it with a custom typeclass for a couple of reasons:
    1. `Wrapped` cannot be used within `deriving anyclass` clause, one has to declare a
    standalone instance, and if we make a copy of `Wrapped` with the type family but without
    methods, then the problem will be resolved.
    2. Our custom typeclass can be documented, it would be nice to have exact use cases for it
    Solution:  Replace `Wrapped` with custom typeclass that is the same as
    `Wrapped` without its method.
Coercions.hs 8.84 KB