pkgsrc/math/hs-bifunctors/DESCR
pho 9f8ab13e86 Import bifunctors-5.5.6 from wip
A bifunctor is a type constructor that takes two type arguments and is
a functor in both arguments. That is, unlike with Functor, a type
constructor such as Either does not need to be partially applied for a
Bifunctor instance, and the methods in this class permit mapping
functions over the Left value or the Right value, or both at the same
time.

Formally, the class Bifunctor represents a bifunctor from Hask ->
Hask.

Intuitively it is a bifunctor where both the first and second
arguments are covariant.

You can define a Bifunctor by either defining bimap or by defining
both first and second.
2020-01-03 04:45:31 +00:00

15 lines
601 B
Text

A bifunctor is a type constructor that takes two type arguments and is
a functor in both arguments. That is, unlike with Functor, a type
constructor such as Either does not need to be partially applied for a
Bifunctor instance, and the methods in this class permit mapping
functions over the Left value or the Right value, or both at the same
time.
Formally, the class Bifunctor represents a bifunctor from Hask ->
Hask.
Intuitively it is a bifunctor where both the first and second
arguments are covariant.
You can define a Bifunctor by either defining bimap or by defining
both first and second.