[Python-Dev] User's complaints

Guido van Rossum guido at python.org
Thu Jul 13 16:20:33 CEST 2006


Somebody whose name doesn't matter (it's not about him) wrote:
> When some of us first saw what PEP 3000 suggested we were thinking:
> shit, there goes Python. [...]

And later in the same message the same person wrote:

> Things that struck me as peculiar is the old:
>
> if __name__ == "__main__":
>     whatever()
>
> This is so out of tune with the rest of python it becomes a nuisance.

This is an illustration of the dilemma of maintaining a popular
language: Everybody hates change (me too!) but everybody also has one
thing that's bothering them so much they absolutely want it to be
changed. If you were to implement all those personal pet peeves, you'd
get a language that's more different from Python than Python is from
Fortran.

So where's the middle ground? I believe it's established without a
doubt that in biological evolution, changes comes in spurts: A species
may change hardly at all for millions of years, and then suddenly, due
to not quite understood mechanisms, it starts to change rapidly until
a completely new species (or several) has evolved, which again remains
stable for a long time.

I don't want to adopt this time scale for Python (:-), but I do think
it's useful to think of language evolution as a kind of fractal
movement -- at every time scale, there are small jumps and the
occasional large jump. Python 2.2 was a fairly large jump (new-style
classes, iterators, generators, decorators). Python 3000 will be the
largest jump so far. There will be larger jumps yet in the distant
future. But in between, there will be long periods of (relative)
stability.

Will it hurt? You bet! But for many species, sooner or later it's
evolve or become extinct.

-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)


More information about the Python-Dev mailing list