haskell-issues icon indicating copy to clipboard operation
haskell-issues copied to clipboard

EndoT

Open Gurkenglas opened this issue 8 years ago • 0 comments

import Data.Coercible
data EndoT m a = EndoT {runEndoT :: a  -> m a} deriving Wrapped

instance Monad m => Monoid (EndoT m a) where
  mempty = coerce return
  mappend = coerce (<=<)

(deriving Wrapped)

Gurkenglas avatar Apr 12 '16 10:04 Gurkenglas