调查 cljs.spec 对 :advanced 构建的影响。
目前所有规范都保存在(私有)cljs.spec/registry-ref 原子中。Closure 编译器不了解这个原子,无法将其作为死代码消除。因此,即使规范在“生产”中未使用,它们仍然会增加生成的JS大小。一些规范可能在运行时使用,无法删除,但是生成部分很可能在 :advanced 构建中永远不会需要,应该以某种方式省略。
在测试构建(使用1.9.93)中,只要在某个地方 :require'd cljs.spec,就会增加11kb(102kb 对 91kb),并且随着每个定义的规范的增加而增长。