2024 Clojure状态调查中分享您的想法!

欢迎!请查看关于页面了解更多关于这个平台的信息。

+1
错误

今天我在一个reify形式中遇到了语法错误,错误信息相当晦涩。

(defprotocol Foo
  (foo [a]))

(reify Foo
  (foo a
    (inc a)))

产生以下错误:

语法错误(IllegalArgumentException)在(REPL:1:1)编译时。
不知道如何从clojure.lang.Symbol创建ISeq

如果在错误消息中含有“reify”和“foo”作为线索,这将有助于我更容易地识别错误。

此外,行号和列号不正确 - 它们指的是reify形式的开启括号的版本(行1,列1),而我的错误在第2行,列7。

考虑更好的错误消息,像是

> 在reify形式中存在语法错误 – 找到的是符号'a',期望找到参数列表。

1 答案

+1

被选择
...