所以我遇到了麻烦,每次我评估 Clojure 函数,或输入 REPL 并调用它时,我都没有得到结果,而是类似 #function[clojure.core/map/fn--5880]
。
是什么导致了这个问题?我应该得到像这里的列表这样的结果,但我没有。如果我要在 REPL 中定义所有内容并运行它,结果会很好。
我输入的内容大多无关紧要,任何稍微先进的内容都会导致这种情况。
更多细节:
应要求。
(def filename "tester.csv")
(defn parse
"Convert a CSV into rows of columns"
[string]
(map #(clojure.string/split % #"\n")))
在 REPL 中:
(parse (slurp filename))
最佳答案
在这个特定的例子中,你得到了function[clojure.core/map/fn--5880]
,我们可以从名字中推断出这是一个在clojure 中定义的辅助函数。核心/ map
。这是一个转换器,当仅使用一个参数调用 map
时返回该转换器。如果你想要一个集合,给 map
一个函数和(至少)一个集合。
关于返回的 Clojure 结果总是函数而不是结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72202986/