命名空间 :keys 解构(参见 CLJ-1919)支持任何类型的标识符在 `::foo/keys` 或 `::foo/syms` 中,但核心规范表明仅允许 `simple-symbol?`。
示例
user=> (let [{::keys [:foo]} {::foo 1}] foo)
在 REPL:1:1 处宏展开 clojure.core/let 时出现语法错误。
...许多规范问题
预期
user=> (let [{::keys [:foo]} {::foo 1}] foo)
1
*建议:* 将此情况的规范从 `simple-symbol?` 扩展到 `ident?`(代码支持)。
*补丁:* clj-2473.patch