In the quest for better browser speed, Mozilla has begun work on new Firefox engines for running JavaScript programs and displaying graphics.
The new JavaScript engine, including a compiler called IonMonkey, is designed to run Web-based programs faster and to impose less disruption during the pesky memory-scrubbing process called garbage collection. And the graphics engine, called Azure, is intended to get along better with Windows' graphics interfaces while still working with those of Mac OS X and Linux.
Says Joe Drew, who's working on Azure:
Firefox 4's graphics performance is great...We're not content with "great," though, and our investigations into how to make drawing even faster have revealed that some of our choices in Gecko's graphics engine aren't optimal for performance.
Naturally, Azure is designed to improve the performance. It also lays the groundwork for future work in separating Mozilla processes into different memory compartments, a long-running project called Electrolysis. The compartmentalization has the potential to improve security and performance, but it requires extensive retooling of basic parts of the browser.
The browser market has become hotly competitive, with Google's Chrome stealing away share of usage once held by Mozilla's Firefox and IE9 finally giving Microsoft a competitive browser again. Responding to the challenge, Mozilla has put Firefox on a Chrome-esque development fast track to try to get new features into people's hands faster.
The next version, Firefox 5, is due June 21, according to release manager Christian Legnitto. But don't expect the JavaScript and graphics changes to arrive that soon.
"IonMonkey is currently in the design stages--David Anderson and I are studying the compiler literature and the competition and doing experiments to find out just what features IonMonkey needs. Coding is about to start," said David Mandelin, a Mozilla JavaScript engine programmer. Compilers handle the essential task of translating the programs a human wrote into the instructions a computer understands.
The new JavaScript engine also is due to get a new debugging interface. That's potentially important: JavaScript programs are steadily increasing in sophistication and size, and tracking down why something isn't working is crucial for programmer productivity.
And, more to the point, all the browser makers are trying furiously to court Web developers with features to make their lives easier. Web developers are the ones who ensure a Web site or Web application works on multiple browsers and takes advantages of new features.
Comments