Utilities for reduction like operations on ranges.
All these reduction operations work for appropriate ranges and scalar values