NullPointerException clojure.core / filter / fn

时间:2018-03-05 08:00:28

标签: clojure

为什么:

(filter f xs)

,导致错误,如下所示:

  

NullPointerException clojure.core / filter / fn

1 个答案:

答案 0 :(得分:1)

  

filter不接受nil作为其第一个(函数)参数。

IMO,因为当您查看filter实施时,不会检查f是否为函数。出于性能原因,我希望这样做。例如。由于性能(https://github.com/clojure/clojure/blob/master/src/clj/clojure/string.clj#L19),string模块也无法检查nil的给定字符串。