Non-mutating sequence operations

Algorithms which do not modify the sequence on which they operate.