2.2+ == 3000? (was Re: Comment on PEP-0238)

Michael Chermside mcherm at destiny.com
Mon Jul 9 16:10:29 EDT 2001


First, thanks for the excellent background. I'd like to address some of your 
points.

Terry J. Reedy wrote:

> Conclusion: The proposed/planned change *is* unprecedented.

Okay, that seems to be true.

> It does not
> have a consensus of  support, and I believe a vote would go against.

This HAS happened before. It's a useful point to make, but not necessarily
a good principle for designing a language. Consensus should be listened to,
but not kowtowed to.

> Theoretical math and CS considerations are mixed if not against it.

Mixed.

> It
> will, I believe, break more lines of code than all other upgrades so far
> put together.  It does not add any functionality whatsoever.

This is true, and is a very good point. It will BREAK CODE, and it DOESN'T
ADD FUNCTIONALITY. This is a strong strike against, and must be balanced
by other advantages.

> It hardly
> adds to net clarity, and maybe detracts, depending on the reader and
> balance of i/i->i versus i/i->f constructions used.

Maybe it clarifies, maybe not. As you point out, there is no consensus.

> It makes Python less
> intuitive for programmers coming to Python from languages, such as C, that
> use the same syntax.

I disagree. Coming to Python from C, I would not ASSUME that integer "/" worked
the same in Python as in C. Neither would I expect "^" to do XOR. In each
case I'd look it up in the manual the first time I tried it.

> The reason for it is to cater to the expectations of
> current-non-user, hoped-for new users who will not read the grammar,
> manuals, or even the tutorials enough to change their expectations.  [Note,
> for instance, that this consideration hardly entered the recent discussion
> on syntax for generators.]

Oh come on. Python *IS* attracting new users on a regular basis, and it
clearly (to me!) has the possibility to attract beginners. This is a GOOD
THING.

> Finally, this change was defined years ago as
> one that would only happen in a new series of Python releases.
> 


Guido... I happen to think you are right, that div is not the best interpretation
of int/int. I'm not sure what IS the right answer, though. If everyone said,
"this will break too much code", then I'd have to be understanding. But as a
fairly new user, without large existing scripts to maintain, I don't really
mind. Others are not as lucky (or are MORE lucky since they got to use Python
sooner than I did).

Gotta-let-Guido-know-that-not-EVERYONE-disagrees-ALL-the-time-ly yours,

Michael Chermside





More information about the Python-list mailing list