Is that a limitation or a strength? It is only a limitation is you have an SMP or Hyperthreading machine. And even if you have an SMP, Unix processor are better than threads.
Even then, have you really looked closely at the semantics of C in the presence of threading? It's very very scary stuff I tell you. The fact is Ruby is rock solid and one of the most bug free systems I have used.
There is nothing quite like native threading to ruin that...
Still the rules of programming haven't been suspended for _any_ tool. Java or Ruby.
Programmer time takes many orders of magnitude more than run time.
Faster Algorithms can make two order of magnitude differences to run times.
Optimization, can, if you're really lucky, speed things up by a factor of 2.
90% of the time is spent in 10% of the code. So concentrate on that.
You really do not know which 10% that is, so profile.
Debug and maintenance, not development are the dominant costs in long lived applications.
These rules of thumb make a fool of simple speed benchmarks. So long as you can meet your real time constraints, (which can be fudged using the C language interface) they weigh very heavily in favour of ease of development, debug and maintenance.
Which is why I have no hesitation in doing large Ruby apps.
John Carter Phone : (64)(3) 358 6639
Tait Electronics Fax : (64)(3) 359 4632
PO Box 1645 Christchurch Email : john.carter@tait.co.nz
New Zealand
Carter's Clarification of Murphy's Law.
"Things only ever go right so that they may go more spectacularly wrong later."
From this principle, all of life and physics may be deduced.
···
On Sun, 25 Sep 2005, Andreas Schwarz wrote:
Andreas Schwarz schrieb:
seekingleverage@gmail.com schrieb:
I'm wondering if anyone could shed some light on whether or not it
would make sense to do a Freenet client in Ruby.
Java is much faster. Search for "Language Shootout".
PS: A more important limitation is that Ruby doesn't use native threads.