It’s been quite awhile since my last post, so I figured it was time for something big. Today I’d like to introduce to you AS3JS!
Example AS3JS Project
I certainly hope the demo convinces you to read this rest of this article 😉
To be frank, I’ve grown quite tired of two things:
- Adobe doing nothing with their beautiful programming language
- ES6 mailing lists which are riddled with constant back-and-forth about low level language specs
- Typed variables
- Package import system
- Much less “this” everywhere
But ActionScript is Flash right? Flash is evil/stupid/dead/obsolete!
Do you have a problem with JS/ES6 or something?
But what about TypeScript / CoffeeScript / ES6 / FlexJS / Jangaroo / Dart etc.?
Well since you asked, I’ll gladly comment on each of them:
- TypeScript – To be honest, if I didn’t have the ability to write AS3JS (or if I didn’t know what AS3 was) I probably would get into TypeScript. But I’ve been developing in ActionScript for a decade and TypeScript looks eerily similar, so I thought “wouldn’t it be cool to use the language I have a preference for on the web?”. Also, TypeScript seems to be adopting many concepts from the ES6 spec, and it’s gotten the point where the two look virtually identical (minus the type safety). If that’s the case, I’d choose ES6 over TypeScript if presented with no other options.
- CoffeeScript – Let me just say that I think the syntax of CoffeeScript is the main turn off for many people, and as with TypeScript it has adopted many concepts from ES6. I personally find the code takes longer to comprehend at a glance without the curly braces, and the symbols it uses to save a few bytes of text just isn’t worth it to me. You could argue it just takes some getting used to, but you can say that just about any language. In a higher level coding language like JS I would prefer to code in a format that resembles its output form a little more.
- Dart – Since Dart is newer than most of the other languages I listed above, the only argument that comes to mind for me is that this is just yet another language to learn. I think developers could benefit from mastering existing languages before adopting new languages that they are based on.