Language change (was RE: iterators (was: python-dev summary))

Raymond Hettinger othello at javanet.com
Tue Feb 20 20:08:20 EST 2001


Courageous wrote:

> >Anyway, my point is that there certainly are forces of change and
> >"featurism", which come up squarely against one of Python's central
> >features: its lack of central features.  (Ironic, ain't it? <wink>)
>
> :-)
>
> This is one of Python's true redeeming values; I hope and pray
> that it doesn't get lost in the woods over the years.
>

I absolutely agree that there should be a strong resistance toward
creeping featurism, but think there should be an equally strong will
to improve the language and not reject ideas out of hand.

Examples of "good" directions for changes:
-- change things that surprise uses (like unexpected integer math)
-- change things that cause users to write awkward or kludgy code (like having
to
    set-up a loop counter when indexing over a list -- which PEP 234 proposes
    to fix)
-- change things that aren't polymorphic (like eval taking only dictionary
objects
    instead of general mapping objects and like the tuple.count() which GvR
rejected).
-- do tough things like unifying the type/class distinction (it will be a bear,
but life
    will be better afterwards).
-- change difficult to use tools (like improving the debugger or adding
interactive help).
-- change things that prevent people from using their favorite tricks (like
adding nested
    scopes so that the functional programmers can go wild).
-- implement things which improve performance (like xreadlines() or
stacklessness).
-- add more examples to the documentation

We can have language improvement without creeping featurism.

Raymond

"In theory, there is no difference between theory and practice.
 In practice, there is." -- Yogi Berra




More information about the Python-list mailing list