{-# OPTIONS_GHC -fno-warn-orphans #-} module Control.Arrow.Instances ( ) where import ClassyPrelude import Control.Arrow instance (a ~ b, Monad m) => Monoid (Kleisli m a b) where mempty = Kleisli return instance (a ~ b, Monad m) => Semigroup (Kleisli m a b) where Kleisli f <> Kleisli g = Kleisli $ f <=< g