[Python-Dev] Changing select.select to accept iterables

Brett C. bac at OCF.Berkeley.EDU
Sat Sep 6 16:31:52 EDT 2003


Bug #798046 basically requests that select.select accept iterables 
instead of only lists.  I took a look at the code and beyond 
PyList_Check()s and a function called list2set that expects a Python 
list to be passed that can easily be changed to take in an iterable I 
see no need to keep the restriction.

But this module is old and I suspect it is used a good amount (the thing 
started at ver. 2.1 by Guido back in 1992).  Since it seems to have gone 
this long without being changed to use the iterator protocol I wanted to 
double-check that changing it would be okay.  The only reason I can 
think of why it wouldn't be is performance, as suggested by the OP of 
the bug report.

And in general, when something like this that smacks of, "there is no 
obvious reason to keep it this way", even though it could have been 
changed a while ago and the CVS log seems to not mention anything 
against the change, should the change just be made?  Or should I just 
ask like this to be safe?  I have a sneaking suspicion the answer is, 
"just change it, Brett!  Use your judgment!  Don't be so timid!"  But 
then at least this way I minimize getting chewed out for breaking code.

Then again, being yelled at makes you think like a Dutchman faster than 
anything I know of.  =)

-Brett




More information about the Python-Dev mailing list