Live data from Hacker News

Ruby and the Opposite of Momentum

kirindave.tumblr.com

11–20 of 69 posts

Re: Ruby and the Opposite of Momentum

#11
I don't think JRuby gets enough credit. He pretty much dismisses it because it uses a lot of memory and starts too slow for simple scripting. The JRuby team have done some tricks to speed up startup time, seems to respond almost as fast as MRI to me now. Haven't paid attention to memory though, but if you are launching a script big enough that memory is a factor I don't think the JVM is going to matter.

With invoke dynamic around the corner (Java 7), it seems that JRuby is Ruby's best hope for a decent runtime.

What I don't get is why all there is such a strong anti-java sentiment in the ruby community. Everyone wants to speed things up by writing native C code. I for one would much rather write java code than C code. It's just as fast and much less shitty. And it runs pretty much anywhere.

Re: Ruby and the Opposite of Momentum

#12
post #6
post #4

The Ruby Language itself has plenty of warts, but the implementation problems are far worse. The MRI is awful, and 1.9 isn't much of an improvement at all. The best hope I see for Ruby's future is embodied in re-implementations like MacRuby, JRuby, and Rubinius. MacRuby could totally become the popular way to write new Cocoa applications. If MRI can be effectively displaced, Ruby can really break out of the "Perl tha…

cough Parrot! cough But seriously, anyone know if Parrot is a realistic vehicle for this? It's just puzzling to me that with all the demand for a better interpreter, there really aren't any available options that are going to satisfy the community at large, and there's no visible light at the end of the tunnel. Is this because Ruby is a particularly difficult language to implement? Is it because there is no formal sp…

All of the above!

Parrot is never going to be viable -- 'flexible' platforms are only so when there are piles of diverse users. Specifications do not make reality.

Ruby has a huge advantage over Perl in that there are a number of groups successfully working to reimplement, specify, and reform it. There are visible lights at the end of the tunnel, they're just for specific communities -- JRuby and MacRuby. Hopefully Rubinius (or a successor project) succeeds in replacing MRI, but it's a pretty damn hard problem.

Re: Ruby and the Opposite of Momentum

#13
post #2

So, does this mean you're going to use other languages more often? If so, which?

For me, python, but that's not exactly a change ;). I've always felt that python offered the same benefits as ruby accept with a simpler syntax, better cross platform support, better performance, and a more organized community.

There's also the fact that the CPython implementation doesn't have any huge warts.

Re: Ruby and the Opposite of Momentum

#14

I don't think JRuby gets enough credit. He pretty much dismisses it because it uses a lot of memory and starts too slow for simple scripting. The JRuby team have done some tricks to speed up startup time, seems to respond almost as fast as MRI to me now. Haven't paid attention to memory though, but if you are launching a script big enough that memory is a factor I don't think the JVM is going to matter. With invoke d…

Seems like the good and crappy things about Ruby and Java, respectively, complement each other well. Ruby is a high productivity language, Java not so much. The JVM is a very well engineered run time engine, Ruby's MRI not so much. Unicode, threading, fast, reliable, portable, well understood and supported. Pluses for Java, minuses for Ruby.

So in principle it seems JRuby could have the best of both worlds. But for now I'm having more fun with Clojure. :)

Re: Ruby and the Opposite of Momentum

#16
post #12
post #6

Earlier quoted context omitted.

cough Parrot! cough But seriously, anyone know if Parrot is a realistic vehicle for this? It's just puzzling to me that with all the demand for a better interpreter, there really aren't any available options that are going to satisfy the community at large, and there's no visible light at the end of the tunnel. Is this because Ruby is a particularly difficult language to implement? Is it because there is no formal sp…

All of the above! Parrot is never going to be viable -- 'flexible' platforms are only so when there are piles of diverse users. Specifications do not make reality. Ruby has a huge advantage over Perl in that there are a number of groups successfully working to reimplement, specify, and reform it. There are visible lights at the end of the tunnel, they're just for specific communities -- JRuby and MacRuby. Hopefully R…

All of the above = a huge bag of hurt that presents some damn near insurmountable problems (leadership, on its own, is a huge issue).

To be honest, I don't know how one would get past those things without first deciding, with a clear conscience, to hijack Ruby from Matz. I know that sounds malicious, but even Dave Thomas is calling for a fork of the language. Seems to me that forking is not quite what we need, as it keeps the language rooted in the past, bringing the performance baggage with it (you're still having to re-implement the loose idea of the Ruby spec, which as you pointed out, presents some really hard problems).

No, maybe we need someone smart, loud, and with balls big enough to arbitrate their way through whatever gray areas are left with Ruby's loose idea of a spec, perhaps make some tough calls on what language features can reasonably be supported, decide what needs to be cut, and break compatibility with existing Ruby code if necessary. To top it off? This person forms a foundation around it, a la Python.org, to ensure that the language is left in good hands, gets proper funding for new development, patches, etc (hell, I would love to donate to Ruby development if I knew the money would be put to good use. I don't have that confidence now).

Of course, what I'm talking about now is not Ruby, but a new thing. This new thing could be quite awesome. Whatever this new thing would be is still years out, even if someone decided today that they would do it.

Python in the meantime?

Re: Ruby and the Opposite of Momentum

#18

Not to rub salt into this whole pile of hurt in the Ruby world lately, but I'm shortly going to be promoting (on Ruby Inside) some rather damning news from the Windows camp in relation to how many significant Ruby libraries are either ignoring Windows or not being transparent enough to make it easy to patch the issues. (I'm not a Windows user, but if Windows is treated like a third world country by Ruby users, it's g…

Amen. I've settled on Vista as my main OS recently. It's not like I'm some noob. I've used Windows, OS X, and Linux extensively. I understand why others choose differently.

I've tried to do RoR on Windows, and it runs like ass. Running poorly and productivity simply don't go together.

Moreover, the .NET platform is anything but stagnant. For Web work, you've got an ORM with LINQ to SQL, and ASP.NET MVC in development. I know some people wouldn't touch it at all, but if you're not scared to drink the flavor-aid there's a lot to do and look forward to.

[Edit: Grammar]

Re: Ruby and the Opposite of Momentum

#19
It would be nice to see some progress made on the interpreter but I think it's to Ruby's credit that the language design hasn't changed that much in the last several years. A lot of the activity on the Python side has been fixing things that weren't well thought through in the first place.

Re: Ruby and the Opposite of Momentum

#20

ruby is slowly but surely showing itself to be the next PHP - popular for all the wrong reasons, terrible implementation and a foolish philosophy

What is PHP's philosophy? Getting stuff easily online? I don't find that foolish. On Ruby, is programmer happiness a foolish idea?
Post reply on HN