Bugs in CPython 3.1.1 [wave.py]

Alf P. Steinbach alfps at start.no
Wed Jan 13 18:12:05 EST 2010


* Steve Holden:
> Alf P. Steinbach wrote:
>> * Steven D'Aprano:
>>> Nobody is trying to understate the complexity of writing a large
>>> application that supports both 2.6 and 3.x, or of taking an existing
>>> library written for 2.5 and upgrading it to support 3.1. But the
>>> magnitude of these tasks is no greater (and potentially smaller) than
>>> supporting (say) 2.3 through 2.5. To describe it as "hopeless" is
>>> simply mistaken and weakens your credibility.
>> It seems that people here put a lot of meaning into "hopeless"...
>>
> Because they are programmers, so they tend to read your meaning quite
> literally. Would you have them do anything else?

When you write "literally" you're referring to choosing *a* meaning that does 
not make sense in general.

In some cases that's relevant because to choose a more reasonable meaning may 
require knowledge that a reader doesn't have, and it's good when that's pointed 
out, because it can increase the clarity of the text.

But yes, I would rather have those few people who consistently choose generally 
meaningless interpretations, and they're just a few people, let that be said, to 
rather point out some technical errors or e.g. ways that things can be explained 
so they're more easy to grok.


>> Would it be better to say that it's "hard" or "very hard" or
>> "impractical for the novice"?
>>
> What would a novice want with writing portable code anyway?

My point is that the (perhaps to be) book is *not* based on that approach, so I 
find it difficult to understand the point of your question.

But treating it as a sort of theoretical question I can think of some reasons, 
including not having to unlearn, easy availability of tools, and the same 
reasons as for a professional, increasing the usability of the code.

But those reasons are all outweighted by the difficulty of doing it.


>> After all, the bug that this thread is about demonstrated that unit
>> tests designed for 2.x do not necessarily uncover 3.x incompatibilities.
>>
>> Even at the level of Python's own standard library.
>>
>> But, regarding reformulations that don't imply untrue things to anyone
>> (or nearly), I'd like the text on that page to still fit on one page. :-)
>>
> Modulo the smiley, what on earth is supposed to be funny about the way
> you waste people's time with trips down semantic ratholes?

Regarding "waste of time" I would love some more substantial comments, pointing 
out e.g. technical errors. But so far nearly all comments have been about 
terminology, how things can be misunderstood by a non-knowledgable reader. To me 
these comments, while not the kind that I would most prefer, are still useful, 
while it appears that in your view it is a waste of time and about semantic 
ratholes  --  but if it is, then you're characterizing-by-association the 
persons here bringing up those issues, not me.

Are you sure that that's what you wanted to express?


> You say something is "hopeless", which can generally be taken to mean
> that nobody should even bother to try doing it

Almost so: a novice should not bother trying to do it.


>, and then retreat into
> argument when a counter-example is provided.

I'm sorry but that's meaningless.

This thread is an example that even with the most extensive effort and the 
presumably best programmers one doesn't necessarily manage to get 2.x code to 
work /correctly/ with 3.x  --  even when 2.x compatibility is not required!

That's the kind of example that matters.


> Just for once, could you consider admitting you might have been wrong?

That's what a change means, what this thread that you're replying in means: an 
admission that my formulation wasn't perceived the way I thought it would be.

And I thank those people who insisted that I change this.

But it's very untrue that I'm always right, or that I have some problem 
admitting to wrongs. For example, this thread is a counter example to your 
implication. And one needs only one counter example, but there are many. It 
seems that you're objecting to me being competent, and would rather have me make 
a lot more errors. Which is a bit silly. However, discussing persons is IMHO 
generally off-topic here. In technical forums it's what people do when they 
don't have any good arguments.


Cheers & hth.,

- Alf



More information about the Python-list mailing list