Convergence options for Ecmascript/Actionscript?
brendan at mozilla.com
Sun Sep 2 20:27:42 PDT 2012
Peter van der Zee wrote:
> On Wed, Aug 29, 2012 at 2:30 AM, Brendan Eich<brendan at mozilla.org> wrote:
>> You really should read back in es-discuss if you have time (understand if
>> you don't!). We covered what made ES4 fail. The main problem was namespaces,
>> upon which packages were built.
>> Unfortunately, AS3 uses namespaces and packages heavily. Mozilla's Shumway
>> project includes an AS3 bytecode recompiler that generates JS, and we cannot
>> lower namespaces to anything native and JIT-optimized in JS itself. Cc'ing
>> Tobias in case he can comment.
> Fwiw, in our as3vm we solved the namespace problem by prefixing all
> properties with a namespace and an arbitrary separator (that would be
> illegal in regular identifiers).
That does not work in general:
// function code here...
use namespace N1;
use namespace N2;
You can't always tell statically that prop is N1::prop in obj, or
N2::prop, or an unprefixed property. At least, not in ES4 as drafted
based on AS3.
> But there are more issues in "as3 vs
> es" than namespaces. For example: implicit instance closures (x=a.foo;
> implicitly binds x to a)
Yes, good one!
> and that pesky `"foo" === new String("foo")`
LOL, I'd banished the memory of early ES4 (2nd try, 2006) wishing to
unify primitives and their wrappers. Thanks (not :-P) for reminding me.
> So I agree with the sentiment that ES won't easily (re)connect with
> as3. Especially when Adobe is working on an as4 that's even more
> disconnected (as Avik mentioned above). And that's their prerogative,
Also I agree with what Taka points out: trying to ask various AS3
developers what they want from JS is counter-productive.
More information about the es-discuss