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

欢迎!请参阅关于页面以了解更多有关如何使用此页面的信息。

0
语法和读者

在 REPL 中,我意外地输入了

user=> 1. "\w+"
RuntimeException 不支持的转义字符:\w clojure.lang.Util.runtimeExce
ption (Util.java:156)

<core$PLUS clojure.core$PLUS@6b7dc78>

您可以看到令人困惑的结果(REPL 仍处于未闭合字符串状态)。查看 LispReader.java 似乎表明 DispatchReader 至少应该在调用 CtorReader 之前检查空格(可能更好的是检查有效的符号字符)。

6 个答案

0

评论者:bronsa

不再可重现

0

评论者:alexmiller

在我看来,似乎是部分可重现的。我在第一个例子中看到了相同的行为。第二个例子在符号 1. } 上工作,但在给定的案例上失败并显示合理的错误。

0

评论者:bronsa

啊,明白了。
修正第一个错误的唯一方法是将 1. "\w+" 更改为有效的正则表达式文本,即在 1. 和下一个调度字符之间允许有空格。
这是我们想要的吗?

0

评论者:alexmiller

不知道

0

评论者:alexmiller

在描述中删除了第2个(不再存在)示例。

0
参考: https://clojure.atlassian.net/browse/CLJ-878(由glchapman报告)
...