- fst3 :: (a, b, c) -> a
- snd3 :: (a, b, c) -> b
- trd3 :: (a, b, c) -> c
- lambdify :: (x -> y -> z) -> (t -> x) -> (t -> y) -> t -> z
- (||*) :: (a -> Bool) -> (a -> Bool) -> a -> Bool
- (&&*) :: (a -> Bool) -> (a -> Bool) -> a -> Bool
- (^..) :: (c -> d) -> (a -> b -> c) -> a -> b -> d
- (^...) :: (d -> e) -> (a -> b -> c -> d) -> a -> b -> c -> e
- (..%) :: (a -> b -> c) -> (a, b) -> c
- (..%..) :: (c -> d -> e) -> (a -> b -> (c, d)) -> a -> b -> e
- (...%) :: (a -> b -> c -> d) -> (a, b, c) -> d
- (>>*) :: Monad m => m a -> (a -> b) -> m b
- (..@) :: (a -> b, a -> c) -> a -> (b, c)
- (...@) :: (a -> b, a -> c, a -> d) -> a -> (b, c, d)
Documentation
lambdify :: (x -> y -> z) -> (t -> x) -> (t -> y) -> t -> zSource
Lambdifies a function. See '(||*)' and '(&&*)' for uses of lambdify
.
| Used in order to make operators capable of operating on functions that later on
| are supplied some value that all functions operate on.
(+*) = lambdify (+) fourTwo = (*4) +* (*2) 42 == fourTwo 7
(||*) :: (a -> Bool) -> (a -> Bool) -> a -> BoolSource
Lambdifies '(||)'.
isBlankOrCommaChecker = (==' ') ||* (==',') isBlankOrComma = isBlankOrCommaChecker 'j'
(&&*) :: (a -> Bool) -> (a -> Bool) -> a -> BoolSource
Lambdifies '(&&)'.
isInRangeChecker = (>9) &&* (<30) isInRange = isInRangeChecker 17
(^..) :: (c -> d) -> (a -> b -> c) -> a -> b -> dSource
2-point-free operator. Similar to .
, but where
| the second function takes two (2) arguments instead of one (1).
multAndSquare (^2) .^.. (*) 36 == multAndSqare 2 3
(^...) :: (d -> e) -> (a -> b -> c -> d) -> a -> b -> c -> eSource
3-point-free operator. See '(^..)'.
(..%) :: (a -> b -> c) -> (a, b) -> cSource
Split a 2-tuple x
into a 2-stack and pass it to f
.
| The same as uncurry.
(...%) :: (a -> b -> c -> d) -> (a, b, c) -> dSource
Split a 3-tuple x
into a 3-stack and pass it to f
.