无法检查一个值是否可约简(可以被
传递给 {{reduce}})。
可以通过使用 {{clojure.lang.IReduce}} 和 {{clojure.core.protocols/CollReduce}}
来组装一些东西,但这并不令人满意
因为 {{CollReduce}} 协议被扩展到 {{java.lang.Object}},所以
{{(satisfies? CollReduce x)}} 总是返回 true,即使对于在约简时会抛出异常的值
也是如此。
在我看来,将 {{CollReduce}} 扩展到 {{Object}} 可能存在
问题。
请注意,ClojureScript 有一个工作的 {{reduceable?}},因此似乎没有
受到这个问题的影响。