From: Ruben Vandeginste Date: 2003-08-21T00:59:33+09:00 Subject: Re: Evaluating Ruby objectively (not exactly) On Wed, 20 Aug 2003, Brandon J. Van Every wrote: > So what do I need to know about Ruby that I haven't learned already? Well, > I'd like to know how appropriate people think it is as a systems programming > language. Someone else said, scripting is good, embedded is bad. What > about huge honking piles of code? What happens as you scale up? > Whether Ruby is a good choice all depends on what you're gonna use it for. Your website mentions you're writing 3D engines.. well, one thing for sure is that Ruby isn't a good choice for writing a 3D engine. You could embed Ruby in a 3D engine though and use it for scripting the engine, while lower level things are written in C. This would combine the strengths of Ruby and C. What happens when scaling up... i think that then you can have a real problem with performance. This is actually not specific for Ruby, but is also valid for Python and Perl. Gentoo linux is a source based linux distribution, and the whole set of software used for package management, maintaining a database of installed software and so on, is written in Python. While it may have seemed a good choice in the beginning, many people now complain about the fact that anything that has to do with package management (through Python code) is horribly slow. I use gentoo myself, so i have first-hand experience with it. I personally would never use a scripting language for (most) large systems programming. I might use it for a prototype, or i would at least make sure that performance critical portions could easily be wrapped in a C extension if this would be needed in the future. To be honest, as for now i am using Ruby only as a replacement for bash+grep+sed, because it's so much more easier to do these things in Ruby... It's my intention though to later on do larger things with Ruby and use it to its full power. I think Ruby has its strong points (for example text processing, scripting,...), but i also think that the 'field of applications' where Ruby would be a good choice is more or less the same field where Python or Perl might also be a good choice. Whether you prefer Python or Ruby is also a matter of personal taste. What also might be important to you is to which libraries you have access from Ruby/Python, what software you might use and whether that's written in Ruby/Python, and so on... Ruben