Flash 10 != ActionScript 4

I’m not saying that you thought that the ActionScript used in Flash 10 was ActionScript 4. I’m not saying I thought it. But, maybe your mom got a little confused over it all and asked you about it and you weren’t quite sure what to say.

There’s been lots of talk about ActionScript 4, and lots of new ActionScript features being talked about in Flash 10, including pretty fundamental changes like typed arrays / vectors. So, it’s no wonder your mom was confused. Just to clear the air, I asked, and got an answer from Tinic Uro.

In summary, AS4 is not even really fully defined yet. It will be based on ECMAScript 4, which you probably know. And even that is still being worked on. You can track the progress of that at http://wiki.mozilla.org/Tamarin:Tracing. It’s too early to even attach release dates or products versions to whatever ActionScript 4 will be.

This entry was posted in Flash. Bookmark the permalink.

11 Responses to Flash 10 != ActionScript 4

  1. TJ Downes says:

    My mom is disappointed, but I’m sure she will get over it. She also says don’t forget to wash your hands before you play with Flash 10

  2. Danny says:

    Yeah, I knew F10 != AS4, but I did get confused when I saw the Vector type… Which sounds like a ECMA4 feature… But yeah, still some time before AS4 is released.

  3. Hector says:

    I heard ECMA4 will be fully defined and released toward the end of the year, I think it’s written on its site.

    One of the things I hope will be implemented on AS is scope level variable declaration, so each variable declared inside a loop, if block, etc just exists during that block of code.

    There was another I thing I always miss while programming AS compared to some other languages like .NET, but I don’t recall it right now… heh.

    Is there any site to request these sort of things?

  4. Jolyon says:

    My mom said that if Flash != AS4 then she’s gonna ditch it for WPF 😉

  5. kp says:

    Hector. ECMA4 may be defined by then, but that doesn’t mean AS4 will. I don’t think it’s even determined exactly how ECMA compliant AS4 will be. I think they are going for “full compliance” but some of the things that ECMA is doing would seriously break backwards compatibility with existing AS3 stuff. So it’s questionable if they will adopt all of the features. So once ECMA4 is finalized, they have to decide what AS4 will be. Then they can start coding it. It’s a ways off.

  6. kp says:

    Danny, yeah, the Vector type is what mostly got me… I mean my Mom… a bit confused. 🙂

  7. kris says:

    Talking about backwards compatibility, do you think that the vector type, once compiled to bytecode, will run on the fp9 avm2 ?

  8. Hector says:

    I wasn’t implying that AS4 will be out at the same time, of course, it was just a comment in addition to the progress of ECMA4.

    For me most changes have been for good, and I agree that is rather nice to have the new Vector type, although it would have been great if the Dictionary had also received some additions, maybe in the next future.

    I wonder if the compiler got some enhancements as well, some of the speed benchmarks and tricks posted on several sites show that it could be improved to be more intelligent.

  9. Bjorn says:

    On the compliance issue, if as4 is fully compliant then shouldn’t it simply be referred to as ECMA4 rather than actionscript?
    I assume as long as it’s called actionscript there will be differences.

  10. kp says:

    Well, ECMA would describe the core language. ActionScript 4 consists of a few different elements. First there’s the core language and the player classes. These are compiled into the runtime. Stuff like MovieClip, Sprite, etc. would not be part of the core language, but part of the player code. Similarly, if a future version of JavaScript is based on ECMA4, it will include the core language plus any HTML DOM stuff on top of that. After the core and player stuff, there are the other bundled classes, such as the mx and fl classes. These are external .as files, but come as standard libraries with the Flash IDE or Flex SDK. Not really part of the language per se, but are included along with the core and player classes in just about all official documentation.

    So ECMA4 compliant would really just mean that the core language is compliant. Even with that, I don’t think they’ll achieve full compliance. For instance, I heard at Moock’s talk in Toronto that ECMA is proposing to do away with int and uint, and just have Number. I would be surprised if AS4 went that route.

  11. Andrew says:

    I look forward to seeing AS4 finally out! Will it be as much of a change as the move from 2 to 3? WE SHALL SEE!!!

Leave a Reply