On Sun, May 31, 2009 at 4:08 AM, dmiller <dmiller2...@gmail.com> wrote:
> > I've posted a major update to the ClojureCLR code to clojure-contrib. > However, if you want to stay up with the latest changes, I recommend > gitting the code at http://github.com/dmiller/ClojureCLR. Consult the > wiki there for information on installing / compiling / running. > > This release brings the code up to revision 1370 of the JVM version, > about a week ago. This means that all the lazy changes have been > incorporated. The latest version of the DLR is used. > > The compiler has been completely rewritten. It now follows the JVM > version very closely, though it still uses the DLR (specifically, > Expression Trees V2) for most code generation. Type hints are > followed. Most important, AOT-compilation now works and loading and > compiling are pretty complete. Because the bootstrap files such as > core.clj can be AOT-compiled into CLR assemblies, the startup time has > been significantly reduced. > > Of the bootstrap files, core.clj is 95% complete. core_print, set, > and zip are at 100%. And main.clj loads, so the standard REPL is > available. Proxying and genclass haven't been attempted yet. > > Speed is still an issue. For basic code generation, the MSIL > produced by the ClojureCLR compiler is as close as possible to the > bytecodes produced by the Clojure(JVM) compiler. The next phase f > work is to do IL-level comparisons of the compiler output of each > implementation. If anyone has some *.clj benchmarks to recoommend, > let me know. > > Overall, this release is a very large step forward in performance and > functionality. There are still enough rough edges and gaps in testing > that daily use cannot be recommended, but those wanting to play and > test will find this release much easier to deal with. Bon appetit. > > David Miller > Wow, great work! I followed the instructions and it worked as stated except for one missing detail: nothing happened because I didn't realize I had to pass arguments to the bootstrapcompiler. I recommend adding a note to compile-run doc that you need command line arguments like "clojure.core clojure.set clojure.zip clojure.main". Once I got that working, it spat out dlls and subsequent startup went from about 9 seconds on my laptop down to 2! Shawn --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en -~----------~----~----~----~------~----~------~--~---