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

Reply via email to