Todd Gillespie wrote:
> 
>...
> 
> To weigh in on the side of Ruby, I point out that it:
> 1. Is more fully OO, with a coherent approach to functions/methods/etc.

More fully OO I will buy. functions/methods etc. I don't really.

> 2. Is shockingly friendly with regards to blocks, closures, and iterators.

Python has no blocks other than anon functions. It has decent closures
in 2.1. Python 2.2 will have iterators and also generators.

> 3. Ruby is far more capable of writing in functional style than Perl.

Weren't we talking about Python? List comprehensions, map, filter, 
lambda and the new "yield" are all strongly functional.

Anyhow, you would have to demonstrate that the features that I conceded
strongly affect "locality".

> I do not know the minds of Dave & Andrew, but were I to defend their
> stance, I would point out the mindshare of Ruby exceeds Python in Japan,
> where both languages have sufficient documentation to make a fair
> comparison, whereas in the States the rarity of Ruby docs has impaired
> such informed research.

I would say that if I spoke only Japanese and someone started coming to
conferences talking about a scripting language developed in Japanese
where I could submit bug reports and patch descriptions in Japanese,
that would be a powerful motivator to choose it over more anglophone
imperialism. So I don't see popularity in Japan as definitive.

> I would also put down my biz card, which reads 'Perl Programmer', and say
> that Python and Perl have almost no semantic distinctions, 

I find that an odd assertion...they have wildly different approaches to
many semantic issues. The type systems couldn't be more different. OO is
quite different.

> ... and both have
> been exhibiting core stagnation.  Core language, mind you -- I am not
> contending the same of applications, which continue rapid progress; POE
> and some Python web tools leap to mind.  But there is a great deal of
> indecision in perl-porters, and major difficulty in writing new
> enhancements.  Larry Wall spoke on this exact point when explaining the
> goals of Perl6.

Why are we back to Perl? Python has been advancing so quickly that many
Python people complain about the rate of change. Between 2.0 and the
upcoming 2.2 we have:

 * list comprehensions
 * Unicode
 * metaclasses and subclassing of basic types
 * XML libraries
 * XML-RPC library
 * warnings framework
 * iterators and generators

Anyhow, many would argue that stability (aka "stagnation") is not
necessarily such a bad thing. In the scripting world we measure
stagnation in months but in the statically compiled world a language
could go five years without an update and nobody would think much of it.
Really, language development serves more of as entertainment than as a
practical necessity. Python was a pretty good object oriented scripting
language four years ago with 1.5.2. I'm sure older versions of Ruby are
still really good languages also. The newer stuff is nice but not
necessary.

The entertainment value is important though. If people don't see new
stuff every year they start to think that the language is dead or
boring.

> There are many arguments in any number of directions, and predictions of
> the future are rarely accurate.  I don't know why Dave & Andrew made the
> above contention, or why some of us are backing it up.
> Perhaps we're just drunk on the power Ruby has given us.

My experience as a Python programmer has been that it is very difficult
to get a new general purpose language over the hump.

Ruby's advantage over Python is a familiarity to Perl programmers. 
-- 
Take a recipe. Leave a recipe.  
Python Cookbook!  http://www.ActiveState.com/pythoncookbook