由 mars0i 添加的评论
我在使用 .clj 文件中的读取器条件时遇到了问题。如果不是 Daniel Compton 过去的关于这个问题的博客文章,我可能都不知道如何解决这个错误。我明白这不仅仅是一个文件名的问题,还有其他可能导致错误的原因,但是当它是文件名问题时,它非常神秘,这似乎是一个很容易犯的错误。一个相关的背景是 Clojurescript 宏可以在 .clj 文件中定义,所以自然会将这个扩展用作宏何时会被编译的提示。
我认为 "不允许读取器条件 ..." 与 "不允许条件读取" 比起来更容易理解,至少它会使明确地知道是读取器条件导致的问题。一旦你知道了 "条件读取" 的意思,一切都是显然的,但据我所知,"条件读取" 不是 Clojure 世界中的一个常用短语,我好奇为什么没有说 “读取器条件”,如果消息是关于这个的。
(一种选择是在错误字符串中添加注释,指出原因可能是用于.cljc文件之外的读者条件。不确定是否想在错误信息中使用“可能”或“可能”这类词汇,因为这可能会导致错误信息变得过长。然而,这种做法在其他地方已经实施,并且在这种情况下可能非常有用;误用.reader条件调用.clj文件似乎会经常发生。)