当您使用错误的参数数量调用关键字时,错误信息不会报告传递了多少个参数
(:kw "one" "two" "three") => java.lang.IllegalArgumentException: 向关键字::kw 传递了错误的参数数量
比较调用Fcn,这显示了传递的参数数量
(name "one" "two" "three") => clojure.lang.ArityException: 向 core/name 传递了错误的参数数量(3)
后者错误信息更清晰,更容易调试。
附上的补丁重新使用了用于生成错误信息的 {{ArityException}} 类,在调用带错误参数数量的关键词时使用此形式。
解决了 CLJ-1067
补丁: keyword-arity-exception-03.patch
经筛选: Alex Miller