अगर मैं clojureक्लोजर फ़ंक्शन चक्रीय निर्भरताएं विशेष रूप से डिज़ाइन द्वारा अस्वीकृत हैं, या क्या यह केवल एक पाठक व्यवहार है?
(defn sub1a [a]
(cond
(= a 0) 0
true (sub1b (- a 1))))
(defn sub1b [a]
(cond
(= a 0) 0
true (sub1a (- a 1))))
(println (sub1a 10))
में निम्न उपाय अपनाते हैं मैं निम्नलिखित त्रुटि मिलती है:
java.lang.Exception: Unable to resolve symbol: sub1b in this context
लेकिन अगर मैं निम्न करें:
(defn sub1a [a]
(cond
(= a 0) 0
true (- a 1)))
(defn sub1b [a]
(cond
(= a 0) 0
true (- a 1)))
(defn sub1a [a]
(cond
(= a 0) 0
true (sub1b (- a 1))))
(defn sub1b [a]
(cond
(= a 0) 0
true (sub1a (- a 1))))
(println (sub1a 10))
यह ठीक चलाता है।
क्या यह डिज़ाइन द्वारा है, या क्लोजर रीडर के तरीके से केवल एक फ़ंक्शन काम करता है?