(defn argcount
([] 0) ; Zero arguments
([x] 1) ; One argument
([ x & args] (inc (count args)))) ; List of arguments
... एक रूप है जो दिखाई नहीं देता का उपयोग कम धर्मार्थ के कार्यों को केवल कुछ डिफ़ॉल्ट मानों के साथ उच्च धैर्य के कार्यों को कॉल करने की अनुमति दें (यह जावा में एक सामान्य मुहावरे है)। क्या इसके लिए कुछ अन्य विशेष रूप इस्तेमाल किया गया है?
ऐसा करने के दो तरीके हैं, और इस सवाल का पहले से ही StackOverflow पर जवाब दिया गया है। दूसरे पर विशेष ध्यान दें, बाद में उत्तर दें: http://stackoverflow.com/a/8660833/152739 – Scott
मेरे लिए ठीक काम करने लगता है: उपयोगकर्ता => (defn f ([] (f 1)) ([ एक्स] एक्स)) # 'उपयोगकर्ता/एफ उपयोगकर्ता => (एफ) 1 –