need .append patch (was RE: [Python-Dev] Re: Python-checkins digest, Vol 1 #370 - 8 msgs)

Tim Peters tim_one@email.msn.com
Wed, 1 Mar 2000 00:57:49 -0500


[Tim, runs checkappend.py over the entire CVS tree, comes up with
 surprisingly many remaining problems, and surprisingly few false hits]

[Guido fixes mailerdaemon.py, and argues for nuking

    Demo\tkinter\www\           (the whole directory)
    Demo\sgi\video\VcrIndex.py  (unclear whether the dir or just the file)

    Demo\sgi\gl\glstdwin\glstdwin.py   (stdwin-related)
    Demo\ibrowse\ibrowse.py            (stdwin-related)
> All these are stdwin-related.  Stdwin will also go out of service per
> 1.6.
]

Then the sooner someone nukes them from the CVS tree, the sooner my
automated hourly checkappend complaint generator will stop pestering
Python-Dev about them <wink>.

> (Conclusion: most multi-arg append() calls are *very* old,

But part of that is because we went thru this exercise a couple years ago
too, and you repaired all the ones in the less obscure parts of the
distribution then.

> or contributed by others.  Sigh.  I must've given bad examples long
> ago...)

Na, I doubt that.  Most people will not read a language defn, at least not
until "something doesn't work".  If the compiler accepts a thing, they
simply *assume* it's correct.  It's pretty easy (at least for me!) to make
this particular mistake as a careless typo, so I assume that's the "source
origin" for many of these too.  As soon you *notice* you've done it, and
that nothing bad happened, the natural tendencies are to (a) believe it's
OK, and (b) save 4 keystrokes (incl. the SHIFTs) over & over again in the
glorious indefinite future <wink>.

Reminds me of a c.l.py thread a while back, wherein someone did stuff like

    None, x, y, None = function_returning_a_4_tuple

to mean that they didn't care what the 1st & 4th values were.  It happened
to work, so they did it more & more.  Eventually a function containing this
mistake needed to reference None after that line, and "suddenly for no
reason at all Python stopped working".

To the extent that you're serious about CP4E, you're begging for more of
this, not less <wink>.

newbies-even-keep-on-doing-things-that-*don't*-work!-ly y'rs  - tim