评论者:bendlas
希望及时开始这次对话,以便在1.9-beta版本中进行。
在我之前的条目CLJ-2030中,我提出的理由是创建一个构造来允许在.cljc文件中的自动别名,我愿意将其作为一项需求提交。在cljs中声明自动别名的明显位置是ns子句。
所以如果我们不希望为该用例扩大别名,我会提出要扩大ns子句的声明以支持关键字别名。为了这个评论,我们可以给它一个工作标题“(:kwns-alias ...)”。
:kwns-alias用于为::qualified/keywords建立命名空间别名
一个悬而未决的问题是,:kwns-alias应该如何与别名交互,即是否::qualified/keyword的命名空间应始终扩展到与限定/符号的同一命名空间,或者应允许它们不同。我会争辩它们应该始终相同,因为简化规则。这意味着,
- 别名将需要检查sym是否已在:kwns-alias中,如果是,则抛出
- :kwns-alias还需要在`qualified/keywords`中工作,可能不再需要在名称中包含knws
那么对于 :kwns-alias,一个不错的名字可能是什么呢?:let 怎么样?