In this chapter, we'll focus on two fundamental patterns of recursion—folding and mapping. The more primitive forms of these patterns are to be found in the Prelude, the "old part" of Haskell.
With the introduction of the Applicative typeclass came more powerful mapping (traversal), which opened the door to typelevel folding and mapping in Haskell. First, we look at how the Prelude's list
fold is generalized to all
Foldable containers. Then, we follow the generalization of the list
map to all
Our exploration of fold and map culminates with the
Lens library, which raises
Traversable to an even higher level of abstraction.
In this chapter, we will cover the following: ...