Иммутабельный дизайн

Иммутабельность функции означает, что она не изменяет переданные ей аргументы.

Функции подобные array_map() имеют преимущество иммутабельности.

Если функция меняет переданные ей аргументы, это вносит хаотичность в процесс выполнения кода, способствует появлению багов, и препятствует созданию программ в функциональном стиле.

Источник – книга «Functional PHP», Luis Atencio
Редактировать на GitHub