Functional
The λ-cube sees all
flatmap
(+ 1 1)
>>==
map
collection.filter(…).map(…).flatMap(…).filter(…).map(…).filter(…).forEach(…)
flatmap
std::reduce(std::execution::seq, v.cbegin(), v.cend())
std::reduce(std::execution::seq, v.cbegin(), v.cend())
list.map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…).map(…)
profunctors
(+ 1 1)
public <A, B, C, D> FunctionType<App2<Grate.Mu<A2, B2>, A, B>, App2<Grate.Mu<A2, B2>, C, D>> dimap(final Function<C, A> g, final Function<B, D> h)
filter
The λ-cube sees all
filter
profunctors
filter
std::reduce(std::execution::seq, v.cbegin(), v.cend())
reduce
filter
Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
Category Theory
flatmap
filter
flatmap
map
filter
profunctors
std::reduce(std::execution::seq, v.cbegin(), v.cend())
filter
filter
Natural Transformations
forall void a n m. MonadEffect n => MonadAff m => MonadEffect m => Plus m => m a -> n (Tuple (m a) (m void))
map
profunctors
Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
>>==
interface Mu extends Profunctor.Mu {}
map
Natural Transformations
std::reduce(std::execution::seq, v.cbegin(), v.cend())
μ
Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
() -> a -> b -> (c, d, e) -> f -> a(b)(c)[d](e, f)
λ
filter
flatmap
Category Theory
functors