After a brief exchange of tweets with @jsmag I discover this web development ‘podcast’ : webdevgeekly.com, which appears to be run by the same people as jsmag.com. About 9 minutes into the following podcast there is a 2 minute discussion about JASPA. Conveniently just 24 hours after I rescued my site from a hardware crash.
> http://www.webdevgeekly.com/r/www.webdevgeekly.com/mp3/geekly6.mp3
I should clarify a few things for anyone listening:
1. I did get a rude email from Douglas Crockford, but not nasty or in any way aggressive. When I very politely asked for his opinion on the project he responded: “I don’t care for ActionScript“; No “hello”, no signature… Call me old fashioned, but I think that’s unnecessarily rude.
2. “I wonder how they’re doing parts of this” (Harmony and ECMA4 gets mentioned)
As any JS evangelist will tell you, Adobe went off and did pretty much their own thing with AS2/3; JAS syntax follows that path as opposed to the current path of ECMAScript. The ‘compiler’ is implemented in pure PHP. You can test the JAS Parser on its own here, or test the full compiler at jaspa.org.uk. Rather than a JavaScript engine, or interpreter like SpiderMonkey that might run in a browser, the JASPA compiler is really a converter which allows you to deploy regular JavaScript to browsers that have no idea how to interpret JAS, or any other super-set of ECMAScript for that matter.
3. Providing libraries that ActionScript developers are used to – e.g. jaspa.net.URLVariables
I do attempt to follow AS conventions where possible. The URLVariables
class is a good example, because it is API agnostic. That is to say that it is a rather abstract utility that could be used in DOM scripting, but equally in any other API, such as server side JavaScript for Flash Media Server for example. It is important to note that the JASPA compiler and JAS syntax are not in any may married to these libaries and APIs. It is platform for which anyone is free to develop their own such utilities.
4. Finally to anyone who wants to try out JASPA, please bear in mind that it is a non-commercial project with a single developer who has a full-time job. The “they” is really a “he”. The compiler itself is a beta, and some of the API classes I’ve been putting together are somewhat alpha.