2012-02-07 13 views
1

私はclojureの学習を始めました.Eulerプロジェクトのいくつかの問題を解決しましたが、何らかの理由で私は厄介な時間はthisです。Clojure:ClassCastException java.lang.Longをclojure.lang.IFnにキャストすることはできません

Hereは、私が書いたコードです。それは2番目の外側のループに到達するまでうまく動作するように見えます。それから、それは失敗し、エラーメッセージはthisのように見えます。私はこのエラーのためにいくつかのグーグルを行った、それは余分な括弧を持っているようだが、私は彼らが私のコードのどこに見ていないよ。ああ、私はたぶん単純なものを見逃してしまったでしょう。

また、そこに不正なコーディング規則がある場合は、私に知らせてください。

+0

コードサンプルはStackoverflowに含める必要があります。問題にはデッドリンクがあります。 – ctpenrose

答えて

6

ライン13にエラーがあります。エラーメッセージがロング機能にキャストすることができなかったことを語っている

(if (and (palindrome? currVal) (> currVal targetP)) 

>は接頭辞でなければなりません。 (つまり、currValは関数ではありません)

+0

私はそれがそれのような何かばかなことであることを知っていた。ありがとう! – sinemetu1

+1

いつでも!あなたのコードをクリーンアップするという点では、defを避けることをお勧めします(代わりにet.al.を学んでください)。また、おそらく低い数字ではなく高い数値から始めたいと思うかもしれません。そうすれば、あなたの最初の結果があなたの答えです。最後に、試していない場合はhttp://www.4clojure.com/をご覧ください。それはあなたをclojureの考え方に導きます。 –

関連する問題