As pointed out by Chouser and others the direct invocation does introduce a bit of static-ness to ClojureScript.
In particular switching a top level definition from a fn to an object (which implements IFn) can cause problems. The compiler now issues warnings if this happens. Related - dynamic binding. You will now get a warning if you try to use a var that has not been declared ^:dynamic. Dynamic vars are never direct invoked. Please try out master and let us know if this causes problems for you in anyway. David On Tue, Apr 10, 2012 at 6:41 PM, David Nolen <dnolen.li...@gmail.com> wrote: > On Tue, Apr 10, 2012 at 6:23 PM, Jason Hickner <jhick...@gmail.com> wrote: > >> Very cool! I'm seeing a size reduction in some code of mine that made >> extensive use of core.match. Maybe from the removal of a lot of CLJS truth >> tests? >> >> Do you have the source available to your CLJS spectral norm code? I'd >> like to see what special techniques (if any) are needed to get hand-coded >> js speeds. >> >> - Jason >> http://www.varywell.com/ >> > > Nothing special, just write fast code like you would write fast code in JS: > > https://gist.github.com/2355182 > > 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