A fold function for Bool

Latest on Hackage:0.4.0

See all snapshots bool-extras appears in

BSD-3-Clause licensed by Erik Hesselink, Jeroen Leeuwestein, Tom Lokhorst, Sebastiaan Visser
Maintained by Tom Lokhorst

Module documentation for 0.4.0

This version can be pinned in stack with:[email protected]:4d46de500f0a86e9c87f19b300485bf8721bf6eced801a43ca122137fa177273,1689

The bool function allows folding over boolean values.

This is comparable to the maybe or either functions on their respective types.

The bool function is a replacement for the build-in if then else-syntax. However, since it is a function, it can be partially applied and passed around to higher order functions, like so:

ghci> :m + Data.Bool.Extras
ghci> let yesOrNo = bool "no" "yes"
ghci> map yesOrNo [True, False, True]
["yes", "no", "yes"]

Note that the arguments to bool are in the opposite order of the if then else-syntax; First the false value, then the true value, and finally the boolean.

Depends on 1 package(full list with versions):