Bulk Operations
Side-effects are often used to manipulate large data-structures:
insert a new element into a collection
move an element to a different place
These are elementwise operations; the parameters and results are elements, and the data-structure is changed by side-effect.
Functional programming uses bulk operations, with entire data-structures are arguments and results -- no side effects.