On 6/11/05, Alexandru Popescu <the_mindstorm / evolva.ro> wrote: > I've run through this thread and i am finally writting this > because i am in a way astonished. > > Afaik Python uses bytecodes while Ruby is completely > interpretative, so imo there is not possible to drive conclusions > from this benchmark. Which is one of the many reasons that I have a problem with the alioth shootout. Ultimately, it tries to treat compiled, semi- compiled, and interpreted languages equally. They're not. Compiled languages will be faster than semi-compiled (bytecode), which will be faster than interpreted. The level of speed difference is a matter of scale, and that scale also matters on development time and clarity. > A lot of _comparisons_ are made in this list (I see everywhere > Ruby code has fewer lines than X, Ruby dev is better than Y, etc); > finally you may expect these other kinds of comparisons to take > place. As far as the 1st comparison was made, I see no benefit > from hidding behind the finger and disregarding from the start the > possibility to look at other types of comparisons. I see here > (n.b. on the ML) lots of ideas and open minds while speaking of > ruby (_and just ruby_) and I appreciate this. But everytime, > somebody/something is bringing into attention another > tool/language something bad/sad happens and all this openminded is > vanishing away. Sorry, but that's just not true. People *are* open-minded on this list with respect to new ideas. On the other hand, many of us don't want to import those ideas which we feel will change the fundamental nature of Ruby. Most of us don't *quite* agree on what that fundamental nature is, but hey, that's the nature of individuals ;) No one has said that Ruby can't afford to be faster, or that other languages ARE faster. What we've said is that, in most cases, Ruby is Fast Enough...and that it gives us pleasure to work with it and we feel that we have a better grasp on our problem domain and that we have a more powerful solution for less development time. All of these items work together. You know what? Python developers generally feel the same about their programs. > While looking at Python and Ruby as both being oo scripting > languages, I agree I would like to hear/see/read comparisons: from > all possible points of view. And imo one of the most important is > the runtime performance. Maybe the development is easier and > cheaper, but if the performance is bad i will not do it. See, the problem is that you can't really know what your performance will be like until you've solved at least part of your problem domain. The use of benchmarks -- especially brainless ones like you'll find at the alioth shootout -- won't help you. Unless, of course, your problem domain is writing benchmarks. Look, there are people doing OpenGL work with Ruby. It's obviously fast enough for *them*. ARPA uses Ruby to drive a large-scale Java application. Rich Kilmer is working on making Ruby drive a Flash application (what's the status on that, Rich?). Ara Howard uses Ruby to do NOAA work on large weather pictures and to drive a cluster. These are all things that require significant computing power. These people have chosen to use Ruby. Why? Because it gives them pleasure, and Ruby is Fast Enough in real world tests. Will they complain if Ruby gets faster? Not at all. They'll be ecstatic. But they're not complaining about Ruby's speed right now. > Also, even if I have to write fewer lines in X, but the tools for > Y are offering much more I will certanly go for Y (disclaimer: I > am not speaking from the pov of writting a command line parser > utility or some other little toy that parse the log of my server, > but from the pov of developing a medium/large application). IMO, this is a little short-sighted way to look at it. Sure, VisualStudio gives you great tools to develop .NET applications. *Damn* but does it ever give you great tools. (I've seen a preview of what's coming in November. Damn, I say, Damn, that's nice.) But you have to do a lot more with the languages behind VisualStudio to get things done. In most cases, the Ruby program will be done or deployable long before the .NET program (and *way* before a J2EE program). Real world results will be measured. Real optimisations can be performed. > A few months ago - not very many - I have started looking at Ruby. > And I am enjoying its ideas a lot. But, after some time, I am > still not sure I will start working with it. I know, you may say: > `maybe Ruby is not for you(and maybe, I can agree with this). I > must sadly confess that I haven't got the same impression while > looking at Python (and from the sizes of communities I can deduce > many others haven't felt the same). You know, I'm not sure whether Ruby is for you or not. Have you done development in it? Has it shown itself to be Too Slow for your problem domain(s)? Does it matter if Ruby finished the job one second slower than Python? Five seconds? Five minutes? Ultimately, it depends on the job as to how that can be answered. Just as another note, I think that the RAA is pretty active. It's run on WEBrick through an Apache proxy. Wow, huh? WEBrick is a pretty performant web server written in Ruby. -austin -- Austin Ziegler * halostatue / gmail.com * Alternate: austin / halostatue.ca