Warum ist das Auslösen einer Ausnahme ein Nebeneffekt?

Laut Wikipedia-Eintrag fürNebenwirkungDas Auslösen einer Ausnahme ist ein Nebeneffekt. Betrachten Sie diese einfache Python-Funktion:

def foo(arg):
    if not arg:
        raise ValueError('arg cannot be None')
    else:
        return 10

Aufruf mitfoo(None) wird immer mit einer Ausnahme erfüllt. Gleicher Eingang, gleicher Ausgang. Es ist referenziell transparent. Warum ist das keine reine Funktion?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage