Tuesday, November 07, 2006

Adobe contributes Flash code to Mozilla

Adobe has opened the source code of the ActionScript Virtual Machine, the high-performance ECMAScript implementation used in Adobe's ubiquitous Flash Player. Adobe has made the source code available under three prominent open source licenses, and contributed it to Mozilla for eventual inclusion in Firefox.

Mozilla has responded to Adobe's contribution by creating the Tamarin Project. Named after a species of tiny arboreal monkeys, the project aims to develop a complete ECMAScript 4 implementation based on Adobe's virtual machine. The Tamarin Project team includes developers from both Mozilla and Adobe.

The Tamarin project roadmap also involves integration of the new virtual machine into SpiderMonkey, the open source JavaScript interpreter used by Firefox. Developed from scratch by Adobe for the recently released Flash Player 9, the virtual machine features a unique Just-in-Time (JIT) compiler that converts ECMAScript bytecode into native machine code.

The JavaScript interpreter currently used in Firefox has been the subject of some criticism, and although it beats Internet Explorer in many benchmarks, it doesn't even come close to matching the performance of Opera's JavaScript implementation. The Tamarin Project developers plan to alter the SpiderMonkey compiler so that it can leverage the native code generation functionality of the new virtual machine, dramatically increasing the runtime performance of JavaScript in Firefox on many platforms. High-performance JavaScript execution facilitated by native code generation could enable web developers to produce rich web applications with an unprecedented level of sophistication.

A trend towards development of interactive web applications with dynamic scripting techniques has recently increased the relevance of JavaScript on the web.

Mozilla developers hope to integrate Tamarin into Firefox in 2008. Source code is already available in the Mozilla CVS, and independent open source developers are encouraged to participate. More information is available from the Tamarin FAQ and on the Tamarin mailing list.

No comments: