Question: what is the difference between a regular reduction and a collector?
Answer: The normal reduction is meant to combine two immutable values such as int, double, etc. and produce a new one; it's an immutable reduction. In contrast, the collect method is designed to mutate a container to accumulate the result it's supposed to produce.