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

欢迎!请查阅 关于 页面获取更多关于其如何工作的信息。

0
Clojure
编辑

这篇帖子的原始版本询问了管道符号以及美元符号,但关于管道符号的回答在这里: 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
将是否在符号名称中使用 `$` 视为风格或实用性问题(例如,由于担心混淆他人)不提(例如,由于担心混淆他人),是否有 技术 原因避免使用它?

例如,在符号中使用 `$` 有可能导致问题的情况?还是将来 Clojure 会将 `$` 用作特殊语法?

(我确实过去在符号名称中使用过 `$`。)

1 答案

+1

美元符号($)在很多地方(如Datomic)被广泛使用,我预计未来不会有太大问题。

by
我认为可能导致混淆的地方是它被用于类符号的命名中,用来区分外部和嵌套类。这可能意味着它在符号中使用得很广泛,但在某些上下文中有特定意义,但这些上下文可能与您的需求无关。
by
非常感谢。这一切都很好知道,非常有帮助。 (是的,这种情况不会影响我原来的和过去的使用。)
...