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

欢迎!有关如何使用该网站的更多信息,请参阅关于页面。

0 投票
语法和reader

建议允许阅读器接受带有前导斜杠的符号名称。

问题:前导斜杠在诸如"/"或"/="等数学运算符中通常很有用。

目前,只有"/"被作为特例允许,并在clojure.core中的除法运算符中使用。

这可以扩展到允许所有符号的名称以前导斜杠开始。

不应与命名空间限定符号产生歧义。
1) 在前导斜杠的情况下,应将符号解释为未限定的符号,例如"/="。
2) 在斜杠不在前导位置的任何地方,应将其视为命名空间限定的,例如"clojure.core/+"。
3) 在多个非前导斜杠的情况下,第一个斜杠是命名空间分隔符,例如"clojure.core.matrix.operators//="。

可选地,还可能允许名称前导斜杠之后多个斜杠。这将允许符号如"/src/main/clojure"变为有效。

5 答案

0 投票

由pparkkin发表的评论

附上允许在符号名称中使用前导斜杠的补丁。

该补丁更改了用于匹配符号的正则表达式模式,以接受符号名称中斜杠后的字符。

测试通过,该补丁还添加了一些新的特殊-case到符号测试中。

0 投票

由jafingerhut发表的评论

Paavo,今天早些时候提交到Clojure主分支的提交导致您的补丁clj-1324-1.patch无法干净地应用。我没有详细了解,但可能需要简单更新补丁,使其再次能够干净地应用。

0 投票

由pparkkin发表的评论

已附加更新补丁。

0 投票

由jafingerhut发表的评论

如果您能将补丁命名为不同的名称,或者删除旧的补丁,那么会减少混淆。

0 投票
参考: https://clojure.atlassian.net/browse/CLJ-1324(由 mikera 报告)
...