

Rhino is About to Get a Lot Faster - bokchoi
http://www.infoq.com/news/2011/07/rhino-invokedynamic

======
strmpnk
They mention work on getting things inlined and generally making calls faster
but the article is surprisingly free of any real information on what they are
actually doing.

Try this, try that, [laundry list of VM techniques]. we'll make it faster
somehow. Just wait!

(snooze)

I do find Charlie's jab at end-to-end JS apps amusing though. It's the kind of
comment I'd expect flame wars to emerge from on most forums.

~~~
kingkilr
Well the answer is "InvokeDynamic" of course :) FWIW I've heard that term
brandied around for 3-4 years at this point, and I still have no idea what it
means, and I'm a VM implementer. Personally, my feeling is that implementing a
language on the JVM basically involves learning far too much about the JVM
internals, and then changing your language significantly to optimize for that.
But then, I have a competing horse in the race :)

~~~
spullara
Invokedynamic basically gives you access to the same kind of optimizations the
JVM does for virtual method invocations except you do the method resolution.
John Rose has some great articles on it.

------
technomancy
Seems like a no-brainer given that a lot of the JIT and tracing techniques
from the JVM were taken from pioneering VM research in Self, a language which
also pioneered the prototype-based OO for which JS is famous.

------
programminggeek
I think it's great that there more end-to-end JS options emerging. JS is in
many ways just as sane and capable to write server-side code as Python, Ruby,
or PHP. It is obviously capable client side because it's basically the
language that powers Adobe AIR apps. Funny enough, Javascript is about the
only common language that every major tech company can get behind.

~~~
DrJ
this feels like it might be fueling the flame war from the below post. Even
though I work with Node all day.

