An overview of function varieties
We need to distinguish between two broad species of functions, as follows:
- Scalar functions apply to individual values and compute an individual result. Functions such as
abs()
,pow(),
and the entiremath
module are examples of scalar functions. Collection()
functions work with iterable collections.
We can further subdivide the collection functions into three subspecies:
- Reduction: This uses a function that is used to fold values in the collection together, resulting in a single final value. We can call this an aggregate function, as it produces a single aggregate value for an input collection.
- Mapping: This applies a function to all items of a collection; the result is a collection of the same size.
- Filter: This applies a function to all items of a collection that rejects some items and passes others. The result is a subset of the input. A filter might do nothing, which means that the output matches the input; this is an improper subset, but it still fits the...