In previous chapters, we briefly touched on the map
function as an example of built-in higher-order functions. In this chapter, we will explore this topic further and get familiar with map
, flatMap
, filter
, and reduce
functions in Swift with examples. We will also get familiar with the category theory concepts such as Monad, Functor, and Applicative Functor.
This chapter will cover the following topics with coding examples:
Functor
Applicative Functor
Monad
Map
FlatMap and flatten
Filter
Reduce
Apply
Join
Chaining higher-order functions
Zip
Practical examples
Collections are used everywhere in our day-to-day development, and to be able to use collections declaratively, we need means such as map
, filter
, and reduce
. Before going through these functions that are built-in into Swift, let's explore the theoretical background of these concepts.