由 hiredman 发表的评论:
将命名定义为协议或接口似乎与在手中有一个命名空间时能够创建命名空间限定符的 symbol 无关。
我认为补丁还不够,不仅应该支持 (symbol ns "foo"),而且应该支持 (symbol ns 'foo),鉴于 (symbol 'foo) 和 (symbol "foo") 都可以工作,(symbol 'bar 'foo) 也应该可以工作,但现在还不行。
如果 Named 是一个协议,并且如果您将它扩展到 String,并且如果您使 symbol 函数从一到两个 Named 实体创建符号,您仍然需要做 (symbol (ns-name ns) 'foo) 或 (symbol (ns-name ns) "foo")