4Clojure サイトの問題 22を解決していて、シーケンス内の要素をカウントする関数を作成するよう求められています。ある時点で Haskell をいじったので、使用することfold
がおそらくそれを行うための方法であることを知っています。それについて読んだ後、私はreduce
同じ目的で使用する必要があることを理解しました。私が提出した回答は次のとおりです。
#(reduce inc 0 %)
この背後にある理由は、リストを反復し、inc
最初は 0 である値を毎回呼び出すことです。ただし、これは機能しません。サイトは、「間違った数の引数 (2) が渡されました: core$inc」と不平を言っています。だから私は括弧を追加しようとしましたinc
:
#(reduce (inc) 0 %)
これで、 に引数が渡されていないと見なされinc
ます。ここで何が間違っていますか?