PEP scepticism

Tim Peters tim.one at home.com
Fri Jun 29 00:25:11 EDT 2001


[Bernhard Reiter]
> This a general warning against the second system syndrom in Python.
>
> Maybe I am a hypocritical sceptic, but I have the impression that
> some feeping creatureism is introduced into Python.

These are different issues to me:  while feature bloat is a symptom of
Second System Syndrome, the latter goes much deeper than *just* the former.

> This might reduce the main advantage of Python to be clear and easy
> and mostly have one good formulation on how to express what you want
> to program in a structured way.

While I expect everyone would agree those are advantages of Python, I doubt
there's consensus that those 4 advantages are "the main" <wink> advantage.
Language design is more complex than that.

> Examples are:
> 	- augmented Assigments
> 	- Lists comprehensions
> 	- Simple Generators

Two of those were widely debated over the course of a decade, and augmented
assignments in particular were "approved" in the mid-90's, just awaiting
someone to implement them.  They aren't legitimate examples of Second System
Syndrome, in part because of that:  they aren't examples of the system
designer taking large leaps of faith on untested and unreviewed ideas.

They're features you may or may not like, but they're *just* features, and
isolated features at that.

If you want a SSS *prospect* to worry about, try PEPs 252 through 254
inclusive:  rethinking the type/class system from scratch is a radical
change affecting every corner of the language.  I'm more uncomfortable about
that than about all preceding changes combined, and real-life experience
with "the metaclass hook/hack" is too spotty to make a case that we really
know the ultimate effects of these changes.  Push ahead anyway, and *that's*
SSS material -- possibly.  Nothing else even gets close to it.

> ...
> On the other the sum of language constructs is growing and harder to
> understand as a complete system.

Not even Scheme stayed *braindead* austere forever, you know <wink>.

BTW, I agree with Paul that this has nothing to do with the PEP process.  In
fact, the decisions to add the three features you named were made before
PEPs existed.  What the PEPs did in these cases was gather and organize the
(sometimes ancient) c.l.py threads in which they were first debated.

python-today-is-still-guido's-first-python-design-ly y'rs  - tim





More information about the Python-list mailing list