कई बार जब मैं कुछ फ़ंक्शन लिखने का प्रयास करता हूं तो मुझे अपवाद मिलता है। यह सामान्य बात है। जावा में आप जगह और कारण ढूंढ सकते हैं क्यों अपवाद होता है लेकिन क्लोजर अपवाद ग्रंथों में बस मुझे पागल बनाते हैं। क्या कुछ सुझाव हैं कि क्लोजर में अपवाद कैसे पढ़ा जाए और कैसे पता लगाया जाए कि कोड अपवाद कहां होता है और क्यों?आरईपीएल में क्लोजर अपवाद कैसे पढ़ा जाए?
उदाहरण के लिए मैं कुछ कोड ले जाएगा:
(do
(list?)
(list? [])
(list? '(1 2 3))
(list? (defn f [] (do())))
(list? "a"))
जब मैं आरईपीएल में इस फ़ंक्शन को कॉल मैं
java.lang.IllegalArgumentException: Wrong number of args (0) passed to: core$list-QMARK- (NO_SOURCE_FILE:46)
जो मुझे दूसरी पंक्ति में समस्या का पता लगाने में ज्यादा मदद नहीं मिल जाएगा। थोड़ा और जटिल कोड में यह लगभग कोई जानकारी नहीं देगा। (बेशक यह सूची देखने को कहता है? कुछ में तर्कों की गलत संख्या है।) क्या यह गलत है कि मैं आरईपीएल में कोड लिखने की कोशिश करता हूं? आरईपीएल में अपवाद मेसेज कैसे पढ़ा जाए? क्या आरईपीएल में अपवादों के बारे में बेहतर जानकारी प्राप्त करने का कोई तरीका है?
http://stackoverflow.com/questions/2352020/debugging-in-clojure का संभावित डुप्लिकेट। –
http://stackoverflow.com/questions/14297079/why-are-clojure-stacktraces-so-long/14298576#14298576 से भी संबंधित है – JohnJ