Inside JavaScriptCore's low-level interpreter
wingolog.org
wingolog.org
He explains how with C++ he could not get the speed gains he achieved with assembly. One real life example where writing exact assembly code still matters.
Coming to a browser near you.
If this is the sort of topic you are interested in, then you can have the patience to read a few paragraphs. If it's not, then summarizing isn't going to help :)
I hope you see that I'm interested in the topic but read about it the first time. I hope you also can imagine that there are more readers like me. And they would benefit from the correct summary too.
Please do write what else I misunderstood, that is exactly the reason why I wrote the short summary, to get the feedback, not to claim that I understand more than you or any insider. It's short, counting the words some 20 times shorter than your article, so I hope it wouldn't be hard for you to point to any other inconsistency. Summarizing helps if the result is something relevant and clear, in a few sentences instead of 1700 words. Without the summary, the most important points can be overlooked/misunderstood by anybody not "close to the sources."
As you can see, the situation is a bit complicated. If I could have made the article shorter, I would have :)
And thanks for writing the article (and the other ones on the same subject) I've really learned a lot!
JavaScriptCore, the WebKit JS implementation http://wingolog.org/archives/2011/10/28/javascriptcore-the-w...
"In 2008, the WebKit folks (...) called the thing SquirrelFish Extreme. Marketers called this Nitro Extreme. (Still, the proper name of the engine is JavaScriptCore; Wikipedia currently gets this one wrong.)"
http://en.wikipedia.org/wiki/WebKit#JavaScriptCore
"JavaScriptCore is a framework that provides a JavaScript engine for WebKit implementations, and provides this type of scripting in other contexts within Mac OS X."
Probably should be "within Safari browser." But as the first linked article notes:
"JSC folks were doing great, well-factored work. It was so good that SpiderMonkey hackers at Mozilla adopted JSC's regexp JIT compiler and their native-code assembler directly."
I believe then it should be "as the whole within Safari browser, and some key parts also within Firefox browser."
Moreover the conclusion that "the JS engine is used wherever WebKit is used" would be false. Wwhen describing the use of the given engine, it's not a good description to say "the engine in WebKit" as there is an example of the very popular use of WebKit without the engine: Google Chrome.
Similarly, there's a GIMP-based image editor called Seashore that doesn't use a lot of GIMP's UI, but I still think it's fair to say that the UI code is part of GIMP.