In article <0G9B00D37JKHUY / mta6.snfc21.pbi.net>,
Kevin Smith  <sent / qualitycode.com> wrote:
>For me, Ruby is exactly a better-Python, better-
>Perl, and better-Smalltalk. Of course, I disliked 
>each of those languages when I evaluated them, 
>and Ruby avoids the biggest problems of each, for 
>me.

>I think people who love Python will often dislike 
>(or at least be unimpressed with) Ruby. Perhaps 
>that's the same with all three languages.

   It worked differently for me.  Here's one pig's
programming-language odyssey.  I'm a C programmer who
learned Python last year in order to prototype my work
before coding it up in C.  (Also, I wanted an excuse to
learn a new programming language to broaden my
horizons.)  I *do* love Python.  I even like the
grouping-by-indentation that puts so many people off. I
think Python is the most readable programming language
that has real power -- probably the most readable
programming language, period.  I think it's the best
programming language for a beginner with computers (and
I'm trying to coax my non-techie girlfriend to learn
it).

   However, certain things bothered me.  One was the
scoping rules (due to be fixed soon).  Another was the
treatment of Booleans.  Surely such a high-level
language should have explicit `true' and `false'.
Python says that 0, 0.0, the empty list, the empty
dictionary...are false, but other creatures of the same
types are true.  This takes a wart from C (where it may
be sort of excusable because C is at a lower level),
and inflates it to hideous and alarming proportions.
Finally and maybe most importantly, though I was having
fun with OO, I kept wishing that Python was more
thoroughly OO.  I wanted to learn OO thinking, so I
tried to learn smalltalk, but I found myself struggling
with the alien syntax.

   Then I found the wonderful pickaxe book!  Ruby is a
marvelous language; it is the language that I'd really
been looking for for some time.  I was further
delighted to see some very cool math in some extension
libraries (I love math).  I could go on and on about
the things I love about Ruby, but you've already
heard them :-).

   This hasn't turned me against Python however.  I
will probably continue to prototype in it, since it
maps very easily to C and makes for code that other
people can follow easily.  I also will continue to
dabble in other languages.  However, I will code in
Ruby for fun!

                   Regards, Bret

Bret Jolly (Jou Lii Bair)
NB: to email, remove the cow noises and underbar from my domain name.