2024 年 Clojure 状况调查! 中分享您的看法。

欢迎!请参阅 关于 页面以获取更多关于这是如何工作的信息。

+4
文档
关闭

在命名空间映射语法的部分,中项提到了 :_/foo 会将关键字视为不包含映射的当前命名空间,从而使未命名的键在命名空间映射中被包含。提供的示例不包括这种行为,这导致很多(包括我,以及 Discljord 服务器的全部,以及我怀疑 Clojure 领域内很多其他人士)不知道这种行为。

我认为将此包含在示例中有助于明确并显而易见地表达这种行为。例如:

例如,以下具有命名空间语法的映射字面量

#:person{:_/species "Human"
         :first "Han"
         :last "Solo"
         :ship #:ship{:name "Millennium Falcon"
                      :model "YT-1300f light freighter"}}

读取为

{:species "Human"
 :person/first "Han"
 :person/last "Solo"
 :person/ship {:ship/name "Millennium Falcon"
               :ship/model "YT-1300f light freighter"}}

我已经签署了 CA 并可以如果你觉得可接受的话开启一个 PR。

标记为关闭: 指引已被更新

1 个答案

0

按照设计,参考页面没有包含详尽的特性示例集。这里示例的目标是演示命名空间映射语法的最常见用法。因此,我认为我们不需要在这个例子中添加 :_/foo(这样做没有意义)。

我不同意参考资料不应该有详尽的示例的观点,但我不想就此纠缠。

你能否接受将此功能添加到[奇怪字符](https://clojure.org/guides/weird_characters#_and_namespace_map_syntax)页面?
我很乐意将这些内容添加到指南中。
好的,我很快会写一个PR(Pull Request)。
...