JavaScript creator ponders past, future

Mozilla's Brendan Eich describes JavaScript's history, the upcoming upgrade, and disagreements with Microsoft


Eich: Well, we’re trying to work together in the ECMA working group and it’s going OK but we have a split committee. So part of the committee is focused on what’s being called ECMAScript 3.1 and the idea there, at least the idea that I think everyone in the committee agrees with, is that it would be a small improvement to the third edition, the last edition from 1999. That it would fix known bugs, it would maybe add a few standards that are already implemented in three out of four browsers, maybe it would add a few more things. But it has to be pretty small because, for one thing, it’s supposed to be a subset of the fourth edition. It’s not supposed to have anything in it that’s not in the fourth edition. And it’s also supposed to be done sooner, so if they keep adding things to it, it’ll never get done. 

I’m hopeful that it does come through because it would be an improvement. In many ways in Firefox we’ve already moved way beyond what’s in there. There are a few things in there that might be good to add to Firefox, so I’m not saying we thought of it all before, but some of it is just based on work we’ve already done. And so we don’t want to take a step backwards and do only 3.1 -- that’s why we’re doing 4. Microsoft seems much more focused on 3.1, and that’s their choice.

InfoWorld: What is Project Screaming Monkey? Apparently it’s some kind of a scripting engine for Internet Explorer?

Eich: Yes. Internet Explorer is a very flexible platform, and you can add scripting engines. They made it possible to add Visual Basic script and so they allowed other people to add Perl and Python; ActiveState did that. So we’ve commissioned Mark Hammond who worked at ActiveState to do active scripting glue for Tamarin, which is the Adobe-donated virtual machine for ActionScript, an ECMAScript implementation, that’s in the Flash Player.

It’s possible that if you’re a developer and you get this, or if Adobe were to distribute this active scripting glue that Mark wrote, that IE would be able to support JavaScript through the Flash Player. It wouldn’t need to have native support for JavaScript 2, it would get it just for free because Flash is widely distributed. Now I don’t know if Adobe will do that. It’d be good if they did, in case Microsoft does not ever get around to supporting JavaScript 2.

And frankly, if Microsoft does a great job on JavaScript 2 and knocks it out of the park, Screaming Monkey doesn’t need to exist. It’s really just a way of getting browsers, starting with IE, to be uplifted to JavaScript 2. Because a lot of people worry -- well, if Mozilla and Opera say, "Do JavaScript 2, but we don’t know when Apple is going to do it and Microsoft says they won’t," then how can anyone ever use JavaScript 2?

One answer is -- you can see this already on a Web site called Someone has just released a translator that takes draft fourth edition JavaScript 2 code and translates it into JavaScript that works in today’s browsers. That’s one tool you could use to use the new language soon. On those browsers that don’t have support for it natively, you translate to JavaScript. Those that do, you just ship the primary source straight through, say, Firefox. The other way to do it is Screaming Monkey and that could be applied to other browsers than IE, but IE is the one that most people use. So if we can uplift IE to support JavaScript 2 without Microsoft’s cooperation, and it’s part of their platform to support other scripting engines, then why not?

| 1 2 Page 5
From CIO: 8 Free Online Courses to Grow Your Tech Skills
View Comments
Join the discussion
Be the first to comment on this article. Our Commenting Policies