2

有什么更可爱的表达方式吗?

#(or (:a %) (b: %) (:c %)) ;; would prefer (desired-fn :a :b :c)

clojure.core 缺少“any-pred”功能,可能是因为已经有一种方法可以提供相同的功能?还是会有人自己实施?

4

1 回答 1

6

some-fn就是你要找的。唯一的区别是some-fn它将返回false而不是nil在没有任何函数返回逻辑真值的情况下。

就像关于命名的注释:它不称为“some-pred”/“any-pred”,因为谓词只返回trueor false,而some-fn将返回第一个逻辑上的真值(可能不是它true自己)。

于 2013-06-23T14:13:31.283 回答