т.е. если у нас метод меняет аргумент и возвращает измененный, то сайдэффекта нет, глобальное состояние _системы_ в целом не поменялось, но сам факт изменения произошел
Могу ошибаться, но по-моему в контексте речь о конкретном объекте и влиянии на его стейт, а глобально сайдэффекты ещё как возможны. Так что чистота тоже мимо.