Embrace the timeline….

On creating rich, flashy and immersive advertising experiences online by Owen van Dijk

The future of Flash ( pt1. Runtime Model )

with 4 comments

Ted has been working on an interesting project called “FLOW” which is based on the PowerSDK framework. I like the idea and concepts behind PowerSDK, although i must admit i haven’t had the time to play with it.

PowerSDK is based on a (runtime) component model, where Flash MX uses an authortime component model. The main difference between the two is that in a runtime environment you are loading the components when you need them, where in an authortime model, you are using including them in your code and compile them. Both have their advantages and disadvantages and this is actually a topic that has spawned religous wars across discussionboards. Note that Flash supported the runtime component model through LoadMovie since Flash 3. I have mailed back and forth with Ted about his ideas, and we came to the conclusion that we worked with the same concepts, except his focus is more on application development, while mine is more focused on a technical background.

i am currently working on a paper about implementing a Virtual Machine ( think CLR / Parrot ) into new versions of Flash. We now have a player that sacrifices a lot ( codewise ) because it has to be small and portable and can be easiliy deployed. I am thinking about a runtime that can talk different languages ( either C#, Java or dynamic scripting languages ). It will always output SWF though, so no chances have to be made to the player. On top of this runtime, you can put the component layer, and these components are language neutral. This component layer has interfaces so you can put any IDE you want, think the Flash IDE.but also more traditional IDE’s likeJbuilder, Visual Studio and so on. In a sense that is like mimicking .NET framework except you are still publishing SWF bytecode.

One of the reasons behind is that i think Flash (Actionscript) will always be limited by the current ECMA implementation. Now we have the new ECMA4 specifications backwards implemented ( AS2 is just an interface to AS1, as it compiles to AS1, which is indeed a big plus ) but as Dave Yang pointed out, the language itself is neither too easy nor too powerfull, and it becomes irrelevant for advanced developers. For VB developers, they will stick to VB.net if they want a more OO approach, and for C# or Java developers there is little reason to use the .NET flavour of ECMA ( Jscript.NET )

If you have the ability to stick with your favorite language, and to use your prefered IDE and still be able to publish and create a nice frontend layer with few lines of code ( because of the components ) than that will open up the market for a whole army of developers who till this day still think of Flash as a toy environment.


Written by ohwhen

September 11, 2003 at 7:17 pm

Posted in Web/Tech

4 Responses

Subscribe to comments with RSS.

  1. Oh yeah! Are you working on a actionscript runtime interpreter for other languages, or more swf(as actions) generation from other code? Sounds interesting : ). Are you using the CodeDom in .Net for this? If so, we will have much to discuss in the coming weeks : ).

    Great to see you have a blog going!

    Robin Debreuil

    September 12, 2003 at 12:25 am

  2. I am thinking about SWF (bytecode) generation from other code. Currently reading a lot about code-to-code translations and parsing techniques. There are some excellent resources out there:

    http://lambda.weblogs.com ( about programming languages in general )
    http://www.program-transformation.org ( this is actually a twiki by dutch professor Eelco Visser, who is the designer of the following link )
    http://www.stratego-language.org/ ( a language for specifications about program transformation systems )

    Owen van Dijk

    September 12, 2003 at 12:44 am

  3. Cool, I will check those outfor sure… I’m really trying to get IL>swf and swf>IL. So then a swfDom for .net that contains objects unique to swf (like Movieclip etc), and the others can just be mapped. Then you can make a project in .net or flash, and run them in each other (or directX – have you checked out DX 9? Whew, nice and easy now : ). That is the plan anyway. As of yesterday the graphics are now done, yeayy!

    I’m really interested to see what develops with your work – swf is really in need of some good compilers. Bookmarked : )


    PS Did you try pasting this* code into the flash AS window? (that was the last thing to finish : ).
    * http://www.richmediabuilder.com/asdraw/asDrawSample.html

    Robin Debreuil

    September 12, 2003 at 1:54 am

  4. Yeah, just tried that. I get the following numbers:

    === Time to Parse ===
    === Time to Draw ===
    === Time to Draw ===

    nice work 🙂

    Owen van Dijk

    September 12, 2003 at 3:05 pm

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: