Ich dachte, ich recur verstanden, aber die folgenden Nutzungs keinen Sinn machen:Wie wird hier rekurriert? [Clojure]
(fn gcd [a b]
(if (= b 0)
a
(recur b (rem a b))))
Die Funktion für zwei Zahlen die größten gemeinsamen Teiler abruft. Für 4 und 2 würde die Funktion 2.
Ich weiß, dass wiederkehrende Funktionen gebunden werden können, aber ich würde denken, dass "b" nur durch die Wiederholung ohne Änderung durchlaufen wird. Im Allgemeinen müssen Sie etwas wie a (inc b) eingeben, damit sich der Wert in der Schleife ändern kann.
Was fehlt mir?