From: Chad Perrin Date: 2008-02-14T07:26:50+09:00 Subject: Re: Ruby, Perl, Python On Thu, Feb 14, 2008 at 03:38:50AM +0900, J. Cooper wrote: > Thank you for the replies. I should have mentioned that I do know some > other, different languages (PHP, C, C#, and a bit of C++ and Java). I > really like C# and love visual studio and just in general the polish > that comes from a company throwing money at a language/framework. But > there is a definite appeal in the dynamic style as well, and I'd like to > be competent in both. (Not to mention, C# is essentially WIndows-only.) > > I like what was said about focus. In fact, the Pygame thing intrigues > me, as I like to imagine myself writing games (I've even started a > little RPG using Gosu in Ruby). > > I suppose my main interest is, are there things that can be done in > Perl/Python that cannot be done in Ruby? Pygame may be an example, and > an appealing one. It's things like that that intrigue me :) You can do all the same stuff in all three languages, in general. Ruby and Perl are a little better for doing functional-style stuff, Ruby and Python are a little better for doing OOP-style stuff, and so on -- but these are all relatively minor differences in the grand scheme of things. The same goes for performance differences -- they're all slow by some standards, and they're all fast enough for any niches where I'd consider using something that isn't compiled to an executable binary as far as I'm concerned. The major differences, for most people, are: 1. a matter of taste 2. how much someone else has already done for you Of the three, Perl has the most libraries, and Ruby probably has the least. On the other hand, Ruby libraries are being created at breakneck speed, and each language has strengths and weaknesses with regard to coverage of certain library niches. Well, Ruby and Python do, anyway. I have yet to have difficulty finding any library types that are represented in Ruby or Python and not in Perl (CPAN is my friend). -- CCD CopyWrite Chad Perrin [ http://ccd.apotheon.org ] print substr("Just another Perl hacker", 0, -2);