我正在为一个赋值编写一个基本的指数函数,并且我无法弄清楚为什么我得到这个错误。这是我的代码:java.lang.Double不能转换为clojure.lang.IFn问题
(def epsilon 0.000001)
(def exponentialing
(fn [F S T x]
(if
(<= T epsilon)
S
(recur (+ F 1) (+ S T) (* T(/ x F)) x))))
(def exp
(fn [x]
(exponentialing 1.0 0.0 1.0 x)))
我得到的最后一行的错误消息,我假设它在参数现场
我只需复制/粘贴您的代码,一切按原样运行。 '(exp 5)'和'(exp(java.lang.Double。5.0))'返回适当的148.41315852164777, 1.8.0和1.9.0-alpha12。 –
向我们展示了如何调用'exp'。 –