I lately came aross Google Web Toolkit. It’s amazing. Except, well, Java. If you write the server side in Java, perfect! If not, then you have a mixed feeling. But really, it’s a great toolkit, except that I’d like to be more free in how and what is generated, and I’ve not yet understood why they are generating all those files. Then I dislike Java’s package naming which leads to very deeply nested directories (which is okay if you use an IDE).
Then I saw Pyjamas aka py-gwt. Wow! Impressive! Much better to use Python instead of Java. And more important, it’s easier to modify parts of the generator!
hg clone static-http://ntecs.de/hg-projects/rubyjs/
So what is RubyJS?
Of course a lot is still missing, mainly compiling constrol structure, blocks, instance variables and of course the whole core library.
But it is really cool, because you can use all sort of Ruby’s meta-programming tricks, like “attr_accessor” for free. Or “require”. It executes as Ruby before it is being translated.
Instance variables and super calls are now implemented.
Compile time selection of method for calls within the same object (includes “super” calls).
implemented iterators, while, break