Skip to end of metadata
Go to start of metadata

Problem

  • analyze passes Clojure forms through the Clojure analyzer and converts the output to maps
    • Various private fields/classes kills any performance, reflection becomes a massive bottleneck

Solution

  • Make all Expr's in Compiler.java public
    • Now that the analyzer is being used outside the Compiler, this seems to be the right choice.
Labels:
  1. Jul 27, 2012

    I really want to see analysis tools get better, and easier to write, but I am worried that exposing Clojure implementation details is pouring concrete around our feet.

    Better would be to make the ClojureScript analyzer (which has a well-considered data interface) smart enough to do the parts of the job it cannot currently do. I say this without having assessed how much work that is. Smile

  2. Jul 28, 2012

    If you mean rewrite analyze to produce AST nodes identical to ClojureScript, then I can do that. I'd like to get it into Clojure Contrib at some point, it would make sense for it to produce unified AST nodes.

    If you're proposing writing some Java, not so much Smile