问题
clojure.lang.Compiler/analyzer 比 clojure.tools.analyzer.jvm/analyze 快得多。
如果我们采用 jvm.tools.analyzer 策略将 clojure.lang.Compiler/analyze 转换为映射,但返回与 tools.analyzer.jvm 相同的 AST,那会很好。
注意
:env 必须包含 :context, :locals, :ns 和源信息。
如果我们有足够的性能,可以创建一个额外的遍历来修复 :env。
TAJ 使用 :form 来查找类型提示,但可能不需要,因为 Compiler/analyze 已经自行解析了反射。
分支: (链接:https://github.com/clojure/tools.analyzer.jvm/tree/TANAL-113 文本:TANAL-113)