在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之前检查空白字符(或许更好的方式是检查有效的符号字符)。