{-# LANGUAGE NoImplicitPrelude #-} module Papa.Prelude.Semigroupoids.Data.Functor.Bind( concat , concatMap , (>>=) , (=<<) , Bind ) where import Data.Functor.Bind(Bind((>>-)), (-<<), join) concat :: Bind f => f (f a) -> f a concat = join concatMap :: Bind f => (a -> f b) -> f a -> f b concatMap = (-<<) (>>=) :: Bind f => f a -> (a -> f b) -> f b (>>=) = (>>-) (=<<) :: Bind f => (a -> f b) -> f a -> f b (=<<) = (-<<)