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