data-aviary-0.2.3: Combinator birds.

Portabilityto be determined
Stabilityexperimental
Maintainerstephen.tetley@gmail.com

Data.Aviary.Functional

Contents

Description

Functor, Applicative, Monad operations specialized to the functional type.

This is for reference (obviously) and is not intended for use.

Synopsis

Functor

fmap :: (a -> b) -> (r -> a) -> r -> bSource

Applicative

(<$>) :: (a -> b) -> (r -> a) -> r -> bSource

(<$) :: a -> (r -> b) -> r -> aSource

pure :: a -> r -> aSource

(<*>) :: (r -> a -> b) -> (r -> a) -> r -> bSource

(*>) :: (r -> a) -> (r -> b) -> r -> bSource

(<*) :: (r -> a) -> (r -> b) -> r -> aSource

(<**>) :: (r -> a) -> (r -> a -> b) -> r -> bSource

liftA :: (a -> b) -> (r -> a) -> r -> bSource

liftA2 :: (a -> b -> c) -> (r -> a) -> (r -> b) -> r -> cSource

liftA3 :: (a -> b -> c -> d) -> (r -> a) -> (r -> b) -> (r -> c) -> r -> dSource

Category

id :: a -> aSource

(.) :: (b -> c) -> (a -> b) -> a -> cSource

(<<<) :: (b -> c) -> (a -> b) -> a -> cSource

(>>>) :: (a -> b) -> (b -> c) -> a -> cSource

Monad

(>>=) :: (r -> a) -> (a -> r -> b) -> r -> bSource

(>>) :: (r -> a) -> (r -> b) -> r -> bSource

return :: a -> r -> aSource

fail :: String -> r -> aSource

mapM :: (a -> r -> b) -> [a] -> r -> [b]Source

mapM_ :: (a -> r -> b) -> [a] -> r -> ()Source

forM :: [a] -> (a -> r -> b) -> r -> [b]Source

forM_ :: [a] -> (a -> r -> b) -> r -> ()Source

sequence :: [r -> a] -> r -> [a]Source

sequence_ :: [r -> a] -> r -> ()Source

(=<<) :: (a -> r -> b) -> (r -> a) -> r -> bSource

(>=>) :: (a -> r -> b) -> (b -> r -> c) -> a -> r -> cSource

(<=<) :: (b -> r -> c) -> (a -> r -> b) -> a -> r -> cSource

forever :: (r -> a) -> r -> bSource

join :: (r -> r -> a) -> r -> aSource

filterM :: (a -> r -> Bool) -> [a] -> r -> [a]Source

mapAndUnzipM :: (a -> r -> (b, c)) -> [a] -> r -> ([b], [c])Source

zipWithM :: (a -> b -> r -> c) -> [a] -> [b] -> r -> [c]Source

zipWithM_ :: (a -> b -> r -> c) -> [a] -> [b] -> r -> ()Source

foldM :: (a -> b -> r -> a) -> a -> [b] -> r -> aSource

foldM_ :: (a -> b -> r -> a) -> a -> [b] -> r -> ()Source

replicateM :: Int -> (r -> a) -> r -> [a]Source

replicateM_ :: Int -> (r -> a) -> r -> ()Source

when :: Bool -> (r -> ()) -> r -> ()Source

unless :: Bool -> (r -> ()) -> r -> ()Source

liftM :: (a -> b) -> (r -> a) -> r -> bSource

liftM2 :: (a -> b -> c) -> (r -> a) -> (r -> b) -> r -> cSource

liftM3 :: (a -> b -> c -> d) -> (r -> a) -> (r -> b) -> (r -> c) -> r -> dSource

liftM4 :: (a -> b -> c -> d -> e) -> (r -> a) -> (r -> b) -> (r -> c) -> (r -> d) -> r -> eSource

liftM5 :: (a -> b -> c -> d -> e -> f) -> (r -> a) -> (r -> b) -> (r -> c) -> (r -> d) -> (r -> e) -> r -> fSource

ap :: (r -> a -> b) -> (r -> a) -> r -> bSource

Arrow

arr :: (b -> c) -> b -> cSource

first :: (b -> c) -> (b, d) -> (c, d)Source

second :: (b -> c) -> (d, b) -> (d, c)Source

(***) :: (b -> c) -> (b' -> c') -> (b, b') -> (c, c')Source

(&&&) :: (b -> c) -> (b -> c') -> b -> (c, c')Source

returnA :: b -> bSource

(^>>) :: (b -> c) -> (c -> d) -> b -> dSource

(>>^) :: (b -> c) -> (c -> d) -> b -> dSource

(<<^) :: (c -> d) -> (b -> c) -> b -> dSource

(^<<) :: (c -> d) -> (b -> c) -> b -> dSource

left :: (b -> c) -> Either b d -> Either c dSource

right :: (b -> c) -> Either d b -> Either d cSource

(+++) :: (b -> c) -> (b' -> c') -> Either b b' -> Either c c'Source

(|||) :: (b -> d) -> (c -> d) -> Either b c -> dSource

app :: (b -> c, b) -> cSource

leftApp :: (b -> c) -> Either b d -> Either c dSource

loop :: ((b, d) -> (c, d)) -> b -> cSource

Comonad

extract :: Monoid m => (m -> a) -> aSource

duplicate :: Monoid m => (m -> a) -> m -> m -> aSource

extend :: Monoid m => ((m -> a) -> b) -> (m -> a) -> m -> bSource

liftW :: Monoid m => (a -> b) -> (m -> a) -> m -> bSource

(=>>) :: Monoid m => (m -> a) -> ((m -> a) -> b) -> m -> bSource

(.>>) :: Monoid m => (m -> a) -> b -> m -> bSource

liftCtx :: Monoid m => (a -> b) -> (m -> a) -> bSource

mapW :: Monoid m => ((m -> a) -> b) -> (m -> [a]) -> [b]Source

parallelW :: Monoid m => (m -> [a]) -> [m -> a]Source

unfoldW :: Monoid m => ((m -> b) -> (a, b)) -> (m -> b) -> [a]Source

sequenceW :: Monoid m => [(m -> a) -> b] -> (m -> a) -> [b]Source