Charles Nutter wrote: > On Tue, Jan 5, 2010 at 10:32 AM, Marnen Laibow-Koser <marnen / marnen.org> > wrote: >> But my point was a bit different. Python and Ruby are basically similar >> languages, and what annoys me is that there seems not to have been the >> will in the Ruby community to steal some speed tricks from Python. (I'd >> be working on this if I knew anything practical about language >> implementation, but I don't.) > > Unfortunately, the Python community seems to turn to "write it in C" a > lot more often than the Ruby community has, so the #1 performance > trick for Python is to not write in Python. That's obviously the wrong > direction for us to go...I don't think anyone here would prefer to > write C over Ruby (or Java, or C++, or C#) when Ruby is the right tool > for the job... Devil's advocate: *is* Ruby the right tool the job for thoses cases? Obviously, I'd rather write in Ruby than in C* or Java, but in a case where the use of Ruby leads to performance problems, Ruby is probably ipso facto not the right tool for the job. > > And I'll also mention the truth of performance we've discovered > repeatedly in JRuby: if you don't have fast core classes, you don't > have a fast Ruby implementation. 99% of the performance problems we've > investigated over the years could be traced back to core class > implementations, which in most implementations are already written in > a "fast" language like C or Java (Rubinius has a mix of C++ and Ruby > for most core classes, with emphasis on Ruby). So a large number of > poor-performing systems in Ruby can be directly attributed to misuse > or slow implementation of core methods. And that's a much harder and > extensive challenge to meet. I can well believe that, though I had understood that some of Python's speed boost came from bytecode compilation as well. > > - Charlie Best, -- Marnen Laibow-Koser http://www.marnen.org marnen / marnen.org -- Posted via http://www.ruby-forum.com/.