The multi-arity fn optimization was causing some code size explosion. I've
committed a refactor that eliminates the issue. Please try!

On Sun, Apr 8, 2012 at 6:26 PM, David Nolen <dnolen.li...@gmail.com> wrote:

> I've spend the past weekend doing some comprehensive optimizations to
> ClojureScript, these can be seen here:
> https://github.com/clojure/clojurescript/compare/all-optimizations
>
> With these optimizations operations are anywhere from 1.5X-5X faster
> depending on the operation and the JavaScript environment.
>
> These optimizations include:
>
> * respect boolean type hints on fns
> * remove CLJS truth tests if we can infer that an if's test expression is
> boolean - this works for common combinations of and/or
>   - this removes nearly all truth tests from PersistentVector, big wins
> here and for other persistent data structures to come
> * multi-arity fns that are not used higher-order are now dispatched
> directly to the correct arity instead of using JS arguments
>   - multi-arity protocol fns also benefit from this optimization
> * remove all truth tests from protocol dispatch fns
>
> Feedback & improvements appreciated. Please try this branch out and let us
> know if it works for you - especially interested if things are faster,
> slower or if the changes adversely affect your file sizes under advanced
> optimization.
>
> David
>

-- 
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

Reply via email to