The irony of it is that Adobe took AS2 (wich was ECMAScript) and turned it into a Javesque language. Not only javascript has blossomed, but performance was always coupled to the static nature of AS3.
In short: they moved the language to the opposite direction of where most people are going, and also ended up with a slower statically typed language.
The situation is not quite so cut and dry, I think. AS3 was supposedly intended to be an implementation of ECMAScript 4, which was derailed by the (ECMAScript 3.1) Harmony project.
Also, I believe the Tamarin AS3 compiler used by Adobe is a collaboration with Mozilla, and both the Adobe Flash Player and Mozilla TraceMonkey engine use the same JIT compiler.
I believe they use the assembler but not the whole tracer. I think the modifications were too heavy so it was pretty much replaced. I could be wrong though, I can't find the reference.
AS3 is still ECMAScript, just a newer version of it.
I do agree they're being left behind in optimization, after leading the pack for a while. Thankfully they're aware of it and they're working on it. Here's something that explains some of the optimizations they're doing to the player:
It's more about the multi-processor support (e.g network loading and some rendering on a separate thread) but it does talk a bit about the JITing and GC changes and whatnot.
In fairness, Adobe would do a lot better if they had the same level of compiler talent behind AS3 that V8 has. There's nothing fundamental about AS3 that makes it any harder to optimize than Javascript, and the optional static types should only help.
Comments
The irony of it is that Adobe took AS2 (wich was ECMAScript) and turned it into a Javesque language. Not only javascript has blossomed, but performance was always coupled to the static nature of AS3.
In short: they moved the language to the opposite direction of where most people are going, and also ended up with a slower statically typed language.
The situation is not quite so cut and dry, I think. AS3 was supposedly intended to be an implementation of ECMAScript 4, which was derailed by the (ECMAScript 3.1) Harmony project.
Also, I believe the Tamarin AS3 compiler used by Adobe is a collaboration with Mozilla, and both the Adobe Flash Player and Mozilla TraceMonkey engine use the same JIT compiler.
I believe they use the assembler but not the whole tracer. I think the modifications were too heavy so it was pretty much replaced. I could be wrong though, I can't find the reference.
AS3 is still ECMAScript, just a newer version of it.
I do agree they're being left behind in optimization, after leading the pack for a while. Thankfully they're aware of it and they're working on it. Here's something that explains some of the optimizations they're doing to the player:
http://arno.org/arnotify/wp-content/uploads/2011/04/Flash-Ca...
It's more about the multi-processor support (e.g network loading and some rendering on a separate thread) but it does talk a bit about the JITing and GC changes and whatnot.
A version of ECMAScript which never really happened. The planning for v4 was pretty much a derailed project.
In fairness, Adobe would do a lot better if they had the same level of compiler talent behind AS3 that V8 has. There's nothing fundamental about AS3 that makes it any harder to optimize than Javascript, and the optional static types should only help.