
27 Dec
2016
27 Dec
'16
12:08 a.m.
I updated the proposal with (again more information in https://ghc.haskell.org/trac/ghc/ticket/13026#comment:5) runSum :: Sum f g a -> Either (f a) (g a)runSum = Left |||| Right runProduct :: Product f g a -> (f a, g a)runProduct (Pair fa ga) = (fa, ga) I found one for ‘Data.Functor.Compose’ o :: Functor m => (b -> n c) -> (a -> m b) -> (a -> Compose m n c)o f g = Compose . fmap f . g