Ryan Scott
2018-04-26 09:57:15 UTC
That's not even the worst part. Even since GHC 8.0, WrappedMonad's
Applicative instance doesn't define pure in terms of return (see [1]), so
at the moment, it's completely unusable for DerivingVia in the way that's
been proposed.
If we we decide we want to keep WrappedMonad after all, we would need to
once again change the semantics of this Applicative instance, since it is
indeed not terribly useful the way it's currently defined.
Ryan S.
-----
[1] https://ghc.haskell.org/trac/ghc/ticket/13876
Applicative instance doesn't define pure in terms of return (see [1]), so
at the moment, it's completely unusable for DerivingVia in the way that's
been proposed.
If we we decide we want to keep WrappedMonad after all, we would need to
once again change the semantics of this Applicative instance, since it is
indeed not terribly useful the way it's currently defined.
Ryan S.
-----
[1] https://ghc.haskell.org/trac/ghc/ticket/13876