Catfight ! Er, Foxfight ! Well, Javascript Fight

The CTO of Mozilla and the platform architect for Microsoft's Internet Explorer are engaging in a little war of words over the format for the next version of the Javascript language. Microsoft's Chris Wilson wants to see an entirely new language supersede the existing version; Mozilla CTO  Brendan Eich wants to supercharge the existing version.

"As I've frequently spoken about publicly, compatibility with the current web ecosystem -- not 'breaking the Web' -- is something we take very seriously," Wilson wrote on the Internet Explorer team blog this week. "In our opinion, a revolution in ECMAScript would be best done with an entirely new language so we could continue supporting existing users as well as freeing the new language from constraints."

...Writing on his blog in response, Eich accused Wilson of spreading lies.

"You seem to be repeating falsehoods in blogs since the Proposed ECMAScript 4th Edition Language Overview was published, claiming dissenters including Microsoft were ignored by me, or 'shouted down' by the majority, in the ECMAScript standardization group," Eich wrote. "Assuming you didn't know better, and someone was misinforming you, you (along with everyone reading this letter) know better now. So I'll expect to see no more of these lies spread by you."

Meowww. Since Mozilla's Eich is the creator of JavaScript, his opinion carries a lot of weight; but his complaints about Microsoft's concerns about the compatibility issues of the new language with the existing language seem focused on personality and not substance.  Microsoft's worry that the new version proposed by Mozilla might not be interoperable with all the script that is already out in the world seems like too important a concern to ignore. Some advice for Eich: If your new version of Javascript doesn't work because you don't like proprietary software, that's a large mob of people that will appear at you virtual doorstep with pitchforks and torches. Please don't blow up the internet. I'm using it. 
Via:  Yahoo News
Tags:  fox, AVA, AV, JavaScript, rip, Java, IP
Brendan Eich 7 years ago

The issue I blogged about has nothing to do with compatibility fears, and everything to do with the false charges that the majority of the Ecma standards group was ignoring or shouting down the minority. Did you read anything I wrote after the first paragraph? Follow the links, read some of the meeting notes and compatibility arguments. We've worked hard for years on evolving the JavaScript standard while keeping compatibility. Every change proposed for the new edition of ECMAScript is either compatible with what real browsers agree on (not only on what JScript does), or else requires the web page to "opt into" the new edition. See and please read the Compatibility section at


Let me know if you have any questions. No one will blow up the Internet, least of all Mozilla -- Firefox has to be compatible to gain market share (and we are still gaining).




Old School 7 years ago
It's great you took the time to respond here.

In response to your first question, I am a news editor, and linked to the content in the news article only. But as an interested observer, I must tell you I couldn't care less about your interactions with Chris Wilson, and vice versa. That's inside baseball. I am interested in whether the concerns raised by him are accurate. I am not an expert in java by any stretch, but I believe that requiring users to opt into the new version to see content that uses old versions of script would certainly seem to be eligible for the title: "breaking the internet." When new versions of utilities are rolled out on the web, It's common to continue to be able to see content that was generated in older versions, using older versions. That question is raised in the comments on the "proposals:versioning" doc you graciously supplied. I'm still not clear on what the answer is.

To paraphrase a Fark cliche, I wrote the article in an editor that displays a Java icon as it boots, after browsing for the article with the Firefox browser, so I'm really getting a kick out of Brendan Eich's reply...

HotHardware would love to give you a forum for outlining your vision for the next version of Java. Would you be willing to answer a few short questions?
Brendan Eich 7 years ago

Sure, inside baseball -- don't get distracted by that, it's not what my blog is about. Here's the substance of the open letter: the standards body in charge of "ECMAScript" a.k.a. JavaScript (which is not Java -- Netscape and Sun misnamed JS as part of a marketing campaign in 1995) is working hard on the next major version, "ES4", and Microsoft has been involved for years.

But earlier this year Microsoft started pushing back. Their objections (you can dig into were originally not about breaking the web -- that's just empty talk -- but more like "the web doesn't need much change" and "can't we keep the language small?" Anyway there was plenty of discussion, recorded in the wiki, and it led nowhere -- Microsoft stopped working on their much smaller "3.1" proposal in April.

Since then we can't tell where they're going, except to document their own JScript differences from the last ECMAScript standard in detail.

You may have noticed, while all this was going on, that Microsoft is working hard on new stuff like Silverlight, which takes on Flash -- and then some. But for IE and its JScript, they want to do little. Their claims about the new version of JavaScript breaking the web are unsupported. We also started hearing (not just from Chris Wilson) spin from Microsoft to the effect that poor little them were being ignored or shouted down, somewhere -- and not just in "blogs". Friendly sources say they are trying this on inside the standards body itself.

That's why it matters that all the proposals and discussions were captured in our wiki, and my blog post links heavily to these primary sources.

I think you've already bought into the spin cycle that Microsoft started, though. Since we are not done standardizing or implementing the new version of ECMAScript, we can't point to a compatible implementation of ES4 in Firefox or Opera, for instance.

And since it's logically impossible to prove a negative, Microsoft FUD about ES4 "breaking the web" will get more attention than it deserves -- until you realize that no one working on ES4 can afford to 'break the web", since the web browser vendors among the pro-ES4 group all have minority market share. Firefox and Opera wouldn't break the web, we have to be more compatible over time to gain market share from Microsoft.

On the other hand, working on Silverlight, trying to spread it like Flash all over the web, while handicapping JavaScript -- these actions on Microsoft's part will break the web over time.

Hope this helps,


ice91785 7 years ago
I can't say that I am not surprised Brendan Eich came to HH to reply on the discussion board here -- kinda cool.

Anyway, the only thing I really wanted to say here is that if you have enough pull to make MS complain BUT not be able to immediately do anything about it that in itself is a feat, given their stronghold on basically anything to do with PCs.

It will be interesting to read up more as this situation progresses.
Elsparrow 7 years ago
Quite frankly, I can't give a rats *** about javascript, I build websites and I'd rather use PHP over JS anyday, as JS just becomes one huge pain in my ***.

Oh, and if you accuse someone of lying, you need some substantial proof, which quite frankly I can't see. I'd go so far as to suggest you are treading on the borderlines of slander.
Brendan Eich 7 years ago

PHP is server-side, JavaScript client-side and in HTML. Where's the conflict?

 If you don't care, why are you complaining about JS? Seems like you do care, but probably what's causing you pain is the buggy DOM implementation in certain browsers. Which has nothing to do with JS.

 You need to read more carefully. I did not accuse Chris Wilson of lying, only of repeating lies someone who is on the standards body told him. See my latest blog post here:

it links directly here:

 where Wilson asserts that I ("the TG-1 committee chair", close enough) "ignored" dissent. That's false, as all the wiki interactions linked from my blog prove. Everyone in the standards body spent long hours reading, cross-referencing, and writing comments on the dissenting proposals. If you can't see it, you are closing your eyes.

Oh, and libel, not slander -- slander's spoken. (J. Jonah Jameson in Spider-Man I, IIRC :-). Get a clue, and try following links and reading. This is not "inside baseball", it's an overt FUD and spin campaign meant to undermine a standards body. Do you really want to be on the wrong side? If so, you'll only continue to get a pain in your *** from "JS" (meaning, the IE JScript engine and the IE DOM).


Old School 7 years ago
Hello Brendan- I read a great deal of the material at the links you provided. I understand that Mozilla and Adobe have fundamentally different views of the Intertunnel than the fellows in Redmond. That's fine. Silverlight and Flash can have a steel cage match with boomsticks later. I'll sell popcorn.

I have only one question, really, and I cannot find the answer to it. Will JavaScript ES3 code currently in place still function if your vision for ES4 is developed and implemented?

Here's what Chris Wilson says about that on his blog:

"That doesn't seem like it will have good interop to me, at least not in a world where mashups and separate code components from disparate places (all of which are some variant of ES3 today) are the norm."

That is pretty much a description of the JavaScript on my own website's form handlers and so forth. And my "revolving pies" will stop spinning. If they don't function my children don't eat.

I'm not afraid or uncertain, but I have my doubts. Will existing code work?

Brendan Eich 7 years ago

 ES4 is a superset of ES3. Here, look at the ES4 reference implementation (RI):

>> function Base(a,b) { this.a = a; this.b = b }
>> Base.prototype.toString = function () { return "Base(" + this.a + "," + this.b + ")" }
[function Function]
>> b = new Base(3,7)
>> function Derived(a,b,c) { this.constructor(a,b); this.c = c }
>> Derived.prototype = new Base
>> d = new Derived(11,21,42)
>> d.c

Same old prototype-based functional programming that works in ES3. It will keep working in ES4, and anyone who tells you otherwise without evidence is FUDding.


Elsparrow 7 years ago
Guess which browser I use. Firefox. And it's FF that causes me headaches.

And quite frankly your attitude on HH is leaving a bitter taste on my mouth, especially as I activly try and promote firefox to people I know and get it used as much as possible.
Brendan Eich 7 years ago

I'll make you a deal:

* Mail me the bugs that are bothering you, specifics if possible but general problems you've observed if that's all you have time for. I'll try to get specific, fixable bugs filed and fixed. If you have a login at let me know it and I'll cc: you on the bugs.

* Don't accuse me of slander or libel or whatever if you haven't actually read what Chris wrote, and looked at all the meeting notes showing lots of discussion of Microsoft's position over the last year.

Then maybe neither of us will be left with a bad taste.


Post a Comment
or Register to comment