This is an old version, view current version.

## 23.1 Overview of Map-Reduce

A map function is a higher-order function that applies an argument function to every member of some collection, returning a collection of the results. For example, mapping the square function, $$f(x) = x^2$$, over the vector $$[3, 5, 10]$$ produces the vector $$[9, 25, 100]$$. In other words, map applies the square function elementwise.

The output of mapping a sequence is often fed into a reduction. A reduction function takes an arbitrarily long sequence of inputs and returns a single output. Examples of reduction functions are summation (with the return being a single value) or sorting (with the return being a sorted sequence). The combination of mapping and reducing is so common it has its own name, map-reduce.