From: Kent J. <ke...@td...> - 2006-11-17 20:12:55
|
I don't understand the appeal of running Rails in JRuby. Why not just use Ruby? What is the advantage of running it in JRuby? Why do people get excited about that? It's a real question, I really don't understand. I use Jython because I am in a Java shop and I need to integrate with Java libraries, but I strongly prefer to code in Python. I am much more interested in language and library upgrades than I am in running Django in Jython; I would like to be able to write generators and use os.walk() and path.py and the csv module. Making Jython compatible with Python 2.2 or greater will also mean I can use more third-party modules. Another popular use of Jython is to add a scripting capability to a Java program; here again I think library and language upgrades are worth more than the ability to run a specific application. Of course to get Django to run you would have to implement much of Python 2.4 so if that is what gets people excited to get on board I'm all for it. I just don't get it, that's all. One difference between JRuby and Jython is that JRuby haa a static target to shoot for - Ruby 1.8. Anything you can do to get Rails running must be a step towards that target. In Jython's case, there are four possible targets, Python 2.2-2.5. I think there is significant value in picking one to shoot for - if Jython had a mix of features from all those versions it could be pretty confusing. Just my $0.02 Kent Charles Oliver Nutter wrote: > I understand that you guys are trying to aim for Python compatibility as > a general goal, and I think that's very admirable. It is obviously the > ultimate goal, as is Ruby compatibility for JRuby. I do have a concern > though, and a little story. > > JRuby development was largely dead when I joined the project in late > 2004. The primary goal at the time was the simple, boring goal of Ruby > 1.8 compatibility. And although that was the right direction to be > moving, it was a pretty boring goal. Nobody really cared about running > edge cases and patching bugs for features they weren't using, so no work > was being done. > > In late 2005, however, I decided things should start moving in a > different direction: toward specific application support. Rather than > the general goal of Ruby compatibility, it seemed like a much more > exciting and compelling idea to try to make real-world Ruby apps run in > JRuby. The first app was IRB, Ruby's interactive shell. After that, > things started to move very quickly; people saw that there was more to > JRuby than simple "Ruby compatibility"...there was the potential to run > all those amazing Ruby apps under JRuby as well. That's when things > really started moving. > > I think Jython should consider a similar approach. Just supporting > Python is not enough of a goal to compel folks to contribute precious > off-hours to the project. Working toward support for apps like Django > would do a lot more for publicity and project interest. > > Since changing the direction on JRuby, we've presented at JavaOne and > other conferences, had paid-for speaking engagements, publishers begging > us to do a JRuby book, and of course the Sun hiring. Supporting a > language is good, but setting a goal to support compelling, real-world > apps is much more exciting. > > Might this be a good way to raise interest in Jython? A better concrete > goal that people can get excited about? > |