Почему снятие исключения является побочным эффектом?
Согласно записи в Википедии дляпобочный эффектВозникновение исключения является побочным эффектом. Рассмотрим эту простую функцию Python:
def foo(arg):
if not arg:
raise ValueError('arg cannot be None')
else:
return 10
Вызывая его сfoo(None)
всегда будет встречаться с исключением. Тот же вход, тот же выход. Это ссылочно прозрачно. Почему это не чистая функция?