some comments for Python 3000

Alex Martelli alex at magenta.com
Sun Aug 13 06:03:38 EDT 2000


<lobozc at my-deja.com> wrote in message news:8n5he1$lbr$1 at nnrp1.deja.com...
    [snip]
> I wouldn't mind Python being faster - for free :-). But if I need
> something _running_ fast I'll use C++ - hard to beat. If I need a

So far, I agree.

> scripting language I need to write the smallest number of lines of code
> to get the result.

Here, I *strongly* disagree.  If lines of code were my target metric,
I would be using Perl or APL -- put enough linenoise in the syntax, and
you can shrink the LOC count considerably.  But the result is notoriously
write-only and hard to maintain.

I think the target metric for my use of scripting is substantially
more complicated and multi-dimensional.  I want clarity first of all;
there is a dynamic tension between a desire to eliminate boilerplate
of all kinds, and a desire for explicit expression -- both are needed
for clarity, but often pull in different directions, or seem to.

High-level semantics is a case in point.  If the semantics, while
high-level, are limpid enough, it's a net gain to have such constructs;
but it's easy to overdo it and end up with very obscure constructs
and idioms.  Generally, I find that Python tends to strike an
excellent balance in this regard -- with many debatable points, to
be sure, but with far better overall results, IMHO, than any other
language I've ever met (and I've met many).

If language-architecture decisions remain strictly in the hands of
our BDFL, I trust that his excellent taste will continue to pull
us through -- this, after all, IS why he's B, D, _and_ FL.


Alex






More information about the Python-list mailing list