PS: A more important limitation is that Ruby doesn't use native threads.
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 : (e-mail address removed)
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.