BT

Enhancements in JScript 5.8, the IE8 Scripting Engine

by Abel Avram on Apr 02, 2009 |

After a couple of betas, IE8 was finally released last month including version 5.8 of its JScript engine. The main enhancements of the scripting engine are: JSON support, performance optimizations, ECMA 3 compatibility, a profiler plus a debugger.

Native JSON support. The IE team boasts as having the first browser which implements JSON natively. This significantly improves the serialization/deserialization process and is considered more secure having better protection against code injection and bad data.

Performance optimization. One of the main problems developers complained about was string concatenation which has been addressed and is several times faster compared to previous JScript versions. Array operations have been also optimized for speed. The engine is now 2.5 times faster according to Greg Badros, Senior Director of Engineering, Google:

Some of the tests we have done show pure JScript performance improvements up to 2.5 times. Key gains are in strings. We also measured the performance gains on common Gmail operations, like loading the inbox (24%), opening a conversation (35%) and opening a thread (25%) compared to IE7.

Compatibility with ECMA 3. One of the main problems was full compatibility with ECMAScript 3 (PDF). The compatibility issues found have been gathered in a public document (PDF) and they are supposedly fixed as the IE team promised.

The circular memory leak. While this problem started to be addressed in 2007, it was fixed starting with IE8 Beta 1 in the COM infrastructure, according to Shreesh Dubey, Product Unit Manager, JScript:

We took a hard look at this problem and realized that this has to be fixed at the COM infrastructure. We implemented a design that bridges the gap between COM ref-counting and automatic garbage collection models. We extended the IDispatchEx interface to enable COM clients to simultaneously live in both the ref-counted and garbage collected worlds.

Profiler and Debugger. IE Developer Tools now have an integrated JScript profiler and also a debugger.

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Educational Content

General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT