Hacker News new | past | comments | ask | show | jobs | submit login
John Lam on Software: Steve Yegge ported Rails to JavaScript (iunknown.com)
33 points by elq on June 25, 2007 | hide | past | favorite | 16 comments



There's a really sweet web application framework called Helma that lets you write entire web apps in javascript, and gives you the JDK through Rhino. The documentation is a little slim, but it's my framework of choice. I don't know why it isn't more popular.

http://dev.helma.org/


Wow do I want to look through that codebase.


Me too. I'd settle for some example code for now though.


Sure, we might go look at framework code sometimes. But it just looks like, well, code. There's usually nothing particularly famous-looking or even glamorous about it. Go look at the source code for Emacs or Rails or Python or Firefox, and it's just a big ball of code. In fact, often as not it's a big hairy ball, and the original author is focused on refactoring or even rewriting big sections of it.

http://steve-yegge.blogspot.com/2006/07/get-famous-by-not-programming.html

I wonder if he wrote that while worrying about this sort of thing.


Why not the Rails to JavaScript port by another Steve...

http://code.google.com/p/trimpath/wiki/TrimJunction


Here's where my ignorance shines through once again...but does the javascript that runs on the JVM have proper threading?

Coz, I'm really not sure how anything server-side could work properly with setInterval() or whatever the favored workaround is.

Why did he not use Python?


Rhino JS is well integrated with the JVM, so it's easy to call back and forth between Java and JS. You basically have access to everything Java has. JS doesn't have an equivalent to "synchronized", but it could easily be added as a function call (since JS has real functions). However, I wouldn't do that way since sticking synchronized blocks all over the place is the wrong solution anyway. Just write your code so that separate threads aren't stepping on eachother's data (and do cross-thread stuff in a carefully controlled manner).

I'm doing my development in Java+JS and it's a pretty nice combination.


http://steve-yegge.blogspot.com/2007/02/next-big-language.html

He didn't use Python because Javascript is the native scripting language for the "next platform," that is, the browser.

Also, he doesn't think that Python is superficially close enough to C and Java to be widely adopted.


Plus, if you want Rails in Python, well, Pylons is pretty close. Only better.


he certainly looks like he just ported rails to javascript. yikes!

http://farm2.static.flickr.com/1188/612490975_5b2f804df2.jpg


What? Wow. What?!

Okay, that sounds great, but what a bureaucratic-sounding backstory. Seriously, that sounds like what happens in Soviet Russia: languages program you!


No, it's because if Javascript is both the language you write client code AND server code, it could be huge.


Agreed which could possibly pave the way for offline apps.


What's really awesome is that I can turn all 2000 hours of work off by adjusting my preferences. I have the power!! :-)


Seems like a wasted effort, but an incredible effort nonetheless!


Steve Yen already did it, a couple years ago.

http://code.google.com/p/trimpath/wiki/TrimJunction




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: