PEP 285: Adding a bool type

Tim Peters tim.one at comcast.net
Sun Apr 7 14:54:11 EDT 2002


[Steve Holden]
> ...
> It's becoming clear to me that Guido's biggest mistake was
> proposing this as a PEP. Since none of the arguments expressed as a
> result have swayed his opinion that the change is a good thing, he
> might as well have simply introduced the change by fiat.

Asking for arguments doesn't obligate one to agree with the arguments
presented.  It doesn't even obligate one to respond in detail to every
argument presented (let alone spend 10 hours a day for a month doing so).
It does obligate one to consider all arguments presented, or at least it
does in my opinion -- and in Guido's.

In the case of adding a ternary conditional operator (C ?: workalike), Guido
rejected his own implementation patch, which didn't get to PEP stage because
the arguments against it from people trying the patch were sufficient.

If something gets to the PEP stage, then of course the author (Guido or not)
believes it's a good idea, unless like Laura's PEP 666 it was introduced for
the purpose of rejection.  It's still not a foregone conclusion, as
evidenced by Guido's PEP 259 (in which case the arguments presented
convinced him to reject his PEP).

In the case of PEP 285, Guido asked for community advice on 8 specific
issues, one of which was "Should this PEP be accepted?".  He didn't find the
contra arguments to that one persuasive.  So what?  He found arguments on
some of the other issues persuasive.  I believe the ultimate pronouncements
all matched his initial views, but this didn't surprise me, as backward
compatibility forced most smaller decisions.  At the time he wrote the PEP,
the disposition of str() and repr() were contentious in pre-PEP Python-Dev
debate, and it was quite helpful to see that virtually nobody on c.l.py
favored str(True) returning '1', while several presented arguments against
it doing so.

> That way he could have ignored the resulting howls of protest rather
> than being forced to respond to them.

If Guido's chief motivation were avoiding howls of protest, he'd never say
anything.  He also got howls of agreement, although it's always the case
that partisans on either side have a much better memory for the howls they
agree with.  If Guido would like to avoid anything, I expect it's that
there's howling at all, whether or pro or con -- Usenet debate routinely
gets childish and abusive (not mentioning Robin Becker by name, but if I had
to, I probably would).

 Not much else would be different...

As it turned out in this case, yes, but that this case turned out as it did
was not a necessary outcome, just a likely one (and PEP 259 looked darned
likely the day it was introduced too).






More information about the Python-list mailing list