Um wow, it is freaking fast. I have never seen Reader, Digg or Gmail load that quickly. Perhaps I can wait for Chrome on the Mac. Someone should benchmark this against V8.
Anyone here know much about the SunSpider benchmark? It's used in this article.
It's a WebKit benchmark, so if they are using that to drive their performance tuning then this might lead to a bias (if you use a benchmark as your milestones you're going to get good at that benchmark, even a complex one).
SunSpider is used pretty widely; it claims to be a balanced benchmark, but where the balance point between different language features lies will depend quite a lot on what kind of application one happens to be writing, so it's more an art than a science.
It's funny how a completely new version of a three-months old javascript engine appears just a few weeks after the launch of Chrome. Not that that's bad, of course.
Oh, I understand that, it's just amazing how Google was boasting about an increase of magnitude in js performance, only to have their asses handed to them in just two weeks :)
Yeah, just threw it on my laptop and it soars. Amazing. And still syncs with mobileme (you may laugh, but I have my bookmarks on my PC at work, and when I find a good article on news.yc and bookmark it, it shows up on my laptop at home)
The JavaScript engine performance improvements we've seen over the last few months has been awesome. The competition clearly benefits everyone.
Obviously it varies between apps, but it wouldn't surprise me if the major bottlenecks in many applications are in the DOM access rather than JavaScript engine. It would be great if we saw similar competition on DOM performance.
it wouldn't surprise me if the major bottlenecks in many applications are in the DOM access
No question about it. I'm wondering why we're not seeing much work being done in this area. Perhaps it's because the problems are messier and not as well defined (let alone as well researched) as things like method dispatch?
The problem with the "Extreme" moniker is specifically: What do you call the next "version"? Squirrelfish Turbo? Super Squirrelfish Extreme? Squirrelfish this?
I think this is why they invented version numbers, but of course, those get annoying after a while too. Isn't that why microsoft went to dates with office?
Squirrelfish 2009
(which of course is released in the summer of 2008)
Its pretty kickass though. I've been reading some of the literature on interpreter design lately because of all this javascript hype. Its really great stuff, and the basics are surprisingly simple to understand. I really love that they post their references along with the posts so we, the adoring public, can do some further reading on how they did what they did.
After this, they go to key combinations on a Symbolics keyboard: Squirrelfish Super, Squirrelfish Meta, Squirrelfish Hyper, Squirrelfish Super-Meta, Squirrelfish Super-Hyper-Meta, etc.
You could go the Japanese anime/game route too. Neo Squirrelfish. Squirrelfish X2. Squirrelfish Alpha. Melty Squirrelfish. Squirrelfish Z. Squirrelfish EX. Super Ultra Hyper Squirrelfish Turbo Edition A2.
This is not as outlandish as it sounds; the easiest way for MS to get high-performance JavaScript would be to jit it onto the existing Silverlight in-browser VM, and use that VM's existing optimisation tricks.