मैं को हल करने की कोशिश कर रहा हूं4clojure.com पर एक अनुक्रम की गणना करें। व्यायाम count
फ़ंक्शन का उपयोग किए बिना संग्रह में तत्वों की संख्या को गिनना है।क्लोजर में सशर्त होने पर मैं रिकर कैसे कॉल कर सकता हूं?
मैंने सोचा कि मैं इसे rest
के उपयोग से रिकर्सन के माध्यम से कर सकता हूं। अगर मुझे जो मिलता है वह खाली नहीं है, तो मैं 1 + recur on the sequence rest returned
लौटाता हूं। समस्या यह है कि मैं भले ही मैं recur
आखिरी बयान के रूप में फोन कर रहा हूँ
java.security.PrivilegedActionException: java.lang.UnsupportedOperationException:
Can only recur from tail position
हो रही अंत है।
(fn [coll] (let [tail (rest coll)]
(if (empty tail)
1
(+ 1 (recur tail)))))
क्या मुझे कुछ याद आ रही है?