5

Why was E4X deprecated and removed from some browsers?

Warning: E4X is obselete. It's been disabled by default for chrome in Firefox 17, and completely removed in Firefox 21. Use DOMParser/DOMSerializer or a non-native JXON algorithm instead.

https://developer.mozilla.org/en-US/docs/Archive/Web/E4X/Processing_XML_with_E4X

1.21 gigawatts
  • 16,517
  • 32
  • 123
  • 231

1 Answers1

5

It was deprecated and removed from the only browser that ever supported it because it was a poorly implemented language feature that was causing all sorts of problems.

As Brendan said somewhere "E4X is crazyland", and FF's implementation of E4X deviates from the spec in ways that are not written down anywhere.

— Mark S. Miller

The only way for it to come back would be via a new edition of ECMA-357, which Adobe and Mozilla were going to work on. Until then, it's out.

— Brendan Eich

The idea behind it wasn't bad, but the way it was integrated into the language was. SpiderMonkey was the only JS engine that ever implemented it, and there were endless problems caused by that and severe complications of the engine's implementation required for this support.

— Till Schneidereit

From Bug 695577

Community
  • 1
  • 1
miken32
  • 42,008
  • 16
  • 111
  • 154
  • 3
    Thanks for the answer. The Flash Player and ActionScript3 implementation works flawlessly. It has been for years. It's a shame they don't implement it. If Adobe was able to share their code it might have made or make it easier. – 1.21 gigawatts Mar 08 '16 at 08:17
  • 2
    @1.21gigawatts I love so much AS3, Shockwave and Flash –  Jun 07 '17 at 00:01