Она не только не имеет побочных эффектов, но и не зависит от побочных эффектов, создаваемых в других частях кода, — например, она не читает глобальные привязки, значение которых может изменяться. Приятное свойство чистой функции заключается в том, что такая функция, вызываемая с одинаковыми аргументами, всегда возвращает одно и то же значение (и больше ничего не делает). Вызов такой функции может быть заменен ее возвращаемым значением, и остальной код не пострадает. Если вы не уверены, что чистая функция работает правильно, вы можете легко ее протестировать, просто вызвав ее и зная, что если она работает в данном контексте, то будет работать в любом.