欢迎!关于此页面的更多信息,请查看 关于 页面。
这个帖子的原始版本询问了管道符号和美元符号,但对于管道符号的答案在这里: https://ask.clojure.org/index.php/11627/the-pipe-char-considered-valid-symbol-constituent-character
然而,我仍然想知道,美元符号 $ 并没有明确列出为符号名称的合法字符。 https://clojure.org/reference/reader#_symbols 实际上它可以在符号中使用。 (def $ 42) $ ;==> 42 (defn a$b [a b] (or a b)) (a$b nil 'foo) ;==> foo (暂时不考虑风格或实用主义上使用 $ 在符号名称中的问题,例如担心会混淆他人)是否有过技术性原因避免使用它?(例如担心会混淆他人)
$
(def $ 42) $ ;==> 42 (defn a$b [a b] (or a b)) (a$b nil 'foo) ;==> foo
比如,使用 $ 作为符号可能会引起问题的边缘情况吗?或者,将来 Clojure 是否可能将 $ 用作特殊语法?
(我确实在以前使用过 $ 作为符号名称的。)
$ 符号在许多地方(如Datomic)都被使用,我认为未来这不会成为问题。