2010-01-25 5 views
9

एसआईसीपी के माध्यम से काम करके इसे क्लोजर और सीखने के लिए नया हूँ।क्लोजर- क्लोजर में कोड का यह टुकड़ा क्यों काम नहीं करता है, क्या कुछ आलसी मूल्यांकन मिला है, मुझे याद आ रही है?

मुझे एससीआईपी 1.3.1 से काम करने के लिए कोड का यह टुकड़ा नहीं मिल रहा है।

मुझे क्या याद आ रही है?

java.lang.Integer cannot be cast to clojure.lang.IFn 
    [Thrown class java.lang.ClassCastException] 

Restarts: 
0: [ABORT] Return to SLIME's top level. 

Backtrace: 
    0: user$sum_cubes_new__2868.invoke(summation.clj:33) 
    1: user$eval__2874.invoke(NO_SOURCE_FILE:1) 
    2: clojure.lang.Compiler.eval(Compiler.java:4642) 
    3: clojure.core$eval__5236.invoke(core.clj:2017) 
    4: swank.commands.basic$eval_region__910.invoke(basic.clj:40) 
    5: swank.commands.basic$eval_region__910.invoke(basic.clj:31) 
    6: swank.commands.basic$eval__930$listener_eval__932.invoke(basic.clj:54) 
    7: clojure.lang.Var.invoke(Var.java:359) 
    8: user$eval__2871.invoke(NO_SOURCE_FILE) 
    9: clojure.lang.Compiler.eval(Compiler.java:4642) 
10: clojure.core$eval__5236.invoke(core.clj:2017) 
11: swank.core$eval_in_emacs_package__458.invoke(core.clj:58) 
12: swank.core$eval_for_emacs__536.invoke(core.clj:126) 
13: clojure.lang.Var.invoke(Var.java:367) 
14: clojure.lang.AFn.applyToHelper(AFn.java:179) 
15: clojure.lang.Var.applyTo(Var.java:476) 
16: clojure.core$apply__4370.invoke(core.clj:436) 
17: swank.core$eval_from_control__461.invoke(core.clj:65) 
18: swank.core$eval_loop__464.invoke(core.clj:70) 
19: swank.core$spawn_repl_thread__598$fn__630$fn__632.invoke(core.clj:179) 
20: clojure.lang.AFn.applyToHelper(AFn.java:171) 
21: clojure.lang.AFn.applyTo(AFn.java:164) 
22: clojure.core$apply__4370.invoke(core.clj:436) 
23: swank.core$spawn_repl_thread__598$fn__630.doInvoke(core.clj:176) 
24: clojure.lang.RestFn.invoke(RestFn.java:402) 
25: clojure.lang.AFn.run(AFn.java:37) 
26: java.lang.Thread.run(Thread.java:637) 
+1

मैंने मानक इंडेंटेशन का उपयोग करने के लिए अपना कोड बदल दिया क्योंकि यह 'sum-cubes-new' में त्रुटि को स्पष्ट करता है। –

उत्तर

19

(defn योग-क्यूब्स नए [ab]
( (योग घन एक इंक ख) ))

:

(defn sum [term a next b] 
    (if (> a b) 
     0 
     (+ (term a) (sum term (next a) next b)))) 

(defn sum-cubes-new [a b] 
    ((sum cube a inc b))) 

त्रुटि संदेश यह कॉल के आस-पास के माता-पिता के अतिरिक्त सेट ने परिणामस्वरूप संख्या को फ़ंक्शन के रूप में मूल्यांकन करने का प्रयास किया है।

+0

हां। यही था वह। धन्यवाद। – lordOfChaos

संबंधित मुद्दे