을 나는 재발을 이해 생각했지만, 다음과 같은 사용은 이해가되지 않습니다 :여기에 반복되는 방식은 무엇입니까? [Clojure의]
(fn gcd [a b]
(if (= b 0)
a
(recur b (rem a b))))
기능은 두 수의 최대 공약수를 검색합니다. 4와 2의 경우 함수는 2를 반환합니다.
recur가 함수에 바인딩 될 수 있다는 것을 알고 있지만 'b'는 변경없이 반복됩니다. 일반적으로 루프의 값을 변경하려면 a (inc b)와 같은 것을 넣어야합니다.
무엇이 누락 되었습니까?