AS3 & Our Future

posted on 2006-04-24

This is the reply I made to a post on the OSFlash list, talking about ActionScript3, MTASC, and haXe.
You can watch the original thread here.

——

> Hi, Flash 9 (better known as Flash 8.5) was announced. I’m wondering on
> how we could compile AS3 with and open source/free environment like MTASC.
>
> Nicolas Canesse has announced to not continue the development of MTASC,
> so it won’t have AS3 support.
>
> Now, i think it’s time to find a way to do that…

IMHO, there is no hurry.

AS3/Flash 8.5 has been in Beta for a while now. I don’t know when Flex2 will ship and the 8.5 player will be officialy released, but at this time I will work seriously on adding 8.5 Player support to haXe if it’s not done yet.

Before that, while I think it’s great to experiment with AS3 and new 8.5 Features, I don’t think it’s proper for full-scale development yet. At least in my company case, we need the player to be available on our clients computer, and that’s not the case for 8.5 Player.

We actually started using Flash 8 a few months ago. It’s pretty easy to go from Flash 7 to Flash 8 since there is only additional features that will simply not work when used with Flash 7 player. In the first time, it was then possible to add some eye-candy F8 effects to our games by keeping the game F7 compatible. Only recently we are asking our users to upgrade their player to Flash 8.

This kind of smooth transition can’t work with Flash 8.5. It’s a new language, a new API, and a new virtual machine. You need then to rewrite everything from scratch, by porting your code, which can be painful in some cases.

Also, remember that what drives Player adoption the most are the websites asking the users to upgrade their Player. We could see a great adoption curve for Flash 8. That’s IMHO thanks to the fact that the new features could be used and enjoyed by all kind of Flash users : designers and programmers.

That might not be the case for Flash 8.5 . I guess it will first be released with Flex 2 for building Rich Internet Applications and then only later Flash 9 - which will still keep Flash <= 8 compatibility. The current AS3 enthousiasts are mostly coders that can see the value of additional VM speed and features. Since they will not be 8.5-capable IDE before Flash 9, I expect the 8.5 player usage - and then adoption - to be a lot slower.

My conclusion is that while AS3 is hot and you can start playing with it right now, companies should carefuly plan their AS3 usage and try to walk the smooth transition line, when that makes sense of course.

That’s where haXe strategy makes sense. First, it provides a programming language a lot better than AS3 (or else I wouldn’t have done it), that can you can use right now in production as an AS2 replacement since it can target Flash Player 6-7-8.

And when haXe Flash Player 8.5 support will be added (don’t worry about it, it’s not that difficult to do), you can slowly migrate your classes, and keep most of your codebase unchanged since haXe is crossplatform. For the places where you are using some Flash API that will have changed between 8 and 8.5 you can use haXe conditional compilation for example :


#if flash9
...
#else flash8
...
#else flash7
...
#end

I guess there will be also some kind of API-wrappers in haXe to be able to ease this kind of changes.

Additionally, you can use haXe to write your Javascript/AJAX code and/or your Server-side code (replacing PHP and the likes).

If you want to know where I see "our future", I can see it right now there : http://haxe.org :)

Nicolas

Leave a Reply

You must be logged in to post a comment.