[Python-Dev] Optimization of the Year

Tim Peters tim.one at comcast.net
Tue Feb 10 20:34:41 EST 2004


[Anders J. Munch]
>> There is a simpler way to make sure all clients that illicitly use
>> ob_item are updated appropriately: Break the build by renaming.  If
>> ob_item is renamed to ob_items or ob_item2 or whatever, any code that
>> uses the old name will cease to compile.

[Guido]
> Good idea.  We'd also have to break binary compatibility (of the List
> API) forcibly otherwise we could be fooled by 3rd party extensions
> compiled for older Python versions -- usually we're careful to keep
> binary compatibility.

I think it's a bad idea, at least until Raymond produces evidence that
overwriting ob_item in extensions isn't "just a myth".  Not even Zope's C
code does that (which is my poster child for pushing the line on Python's
internals).  Google doesn't turn up few enough hits on ob_item to study
exhaustively, and there's no hint via doing so that any code indexed by
Google has mucked with ob_item either.




More information about the Python-Dev mailing list