More proof JavaScript is assembly language and browsers are virtual machines

A friend and colleague of mine sent me a link to the Sun Labs Lively Kernel project today (and he actually made the statement that it reaffirms the original Arno Puder quote).

Lively is very interesting. A lot of folks seem to be coming to similar conclusions about using what's in the browser "natively" to build apps, and even more are taking that one level further by cross-compiling to it - GWT, Lazslo, etc.

Using the native approach and *also* leveraging other plugins like Flash for background processing (but specifically NOT for UI) makes for a very powerful platform - one that is capable of a lot more than web apps are supposed to be able to handle, and one that is deployed with simply a URL and comes with familiar user metaphors for sharing and navigation (take the Flickr file upload widget for instance, that is more impressive than any desktop app I have ever used, lets me select multiple files, directories, and then shows me the progress of each individually, all from a URL, all from multiple platforms and browsers, and all with HTML/JavaScript/CSS and Flash for processing but not UI - with a graceful fallback).

Now, if Sun could maybe follow the lead of other projects (like the GWT talk of compiling to ActionScript also and using Flash for faster processing if it's present - over the JavaScript interpreters in the current generation of browsers), and started to recognize the synergy (sorry, but that word applied) to things like Lively to JavaFX, that would be huge - IMO. What I mean is a cross-compiler for FX, that leverages JavaScript, rather than just relying on Applets (even if you make the plugin not-suck anymore, the damage is already done in large part). It might be tough, but obviously Sun (at least some areas of Sun), recognizes the power of JavaScript as assembly.