composition-prelude 1.1.0.2 → 1.2.0.0
raw patch · 2 files changed
+6/−16 lines, 2 filesdep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base
API changes (from Hackage documentation)
- Control.Composition: (&&&) :: Arrow a => forall b c c'. () => a b c -> a b c' -> a b (c, c')
- Control.Composition: (***) :: Arrow a => forall b c b' c'. () => a b c -> a b' c' -> a (b, b') (c, c')
- Control.Composition: (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- Control.Composition: (=<<) :: Monad m => (a -> m b) -> m a -> m b
- Control.Composition: (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- Control.Composition: first :: Arrow a => forall b c d. () => a b c -> a (b, d) (c, d)
- Control.Composition: infixr 1 <=<
- Control.Composition: infixr 3 ***
- Control.Composition: join :: Monad m => m m a -> m a
- Control.Composition: second :: Arrow a => forall b c d. () => a b c -> a (d, b) (d, c)
- Control.Composition: unless :: Applicative f => Bool -> f () -> f ()
- Control.Composition: void :: Functor f => f a -> f ()
- Control.Composition: when :: Applicative f => Bool -> f () -> f ()
- Control.Composition: zipWithM :: Applicative m => (a -> b -> m c) -> [a] -> [b] -> m [c]
+ Control.Composition: threadM_ :: (Applicative f) => [f ()] -> f ()
Files
- composition-prelude.cabal +1/−1
- src/Control/Composition.hs +5/−15
composition-prelude.cabal view
@@ -1,5 +1,5 @@ name: composition-prelude-version: 1.1.0.2+version: 1.2.0.0 synopsis: Higher-order function combinators description: Replacement for `composition` or `composition-exta`, exporting everything in one sane module. homepage: https://github.com/vmchale/composition-prelude#readme
src/Control/Composition.hs view
@@ -16,24 +16,11 @@ , (-$) -- * Composition with lists of functions , thread+ , threadM_ -- * Tuple helpers , both -- * Functor helpers , (<&>)- -- * Reexports from Control.Arrow- , (&&&)- , (***)- , first- , second- -- * Reexports from Control.Monad- , join- , (=<<)- , (>=>)- , (<=<)- , void- , when- , unless- , zipWithM -- * Reexports from base , (&) , fix@@ -42,7 +29,7 @@ , bool ) where -import Control.Arrow (first, second, (&&&), (***))+import Control.Arrow ((***)) import Control.Monad import Data.Bool (bool) #if __GLASGOW_HASKELL__ > 784@@ -133,6 +120,9 @@ thread :: [a -> a] -> a -> a thread = foldr (.) id++threadM_ :: (Applicative f) => [f ()] -> f ()+threadM_ = foldr (*>) (pure ()) -- setZip :: [ASetter a a b b] -> [b] -> a -> a -- setZip ls ts = thread (zipWith set ls ts)