General question about Python design goals

Robert Kern robert.kern at gmail.com
Sun Nov 27 20:30:22 EST 2005


Christoph Zwerschke wrote:
> Sometimes I find myself stumbling over Python issues which have to do 
> with what I perceive as a lack of orthogonality.
> 
> For instance, I just wanted to use the index() method on a tuple which 
> does not work. It only works on lists and strings, for no obvious 
> reason. Why not on all sequence types?
> 
> Or, another example, the index() method has start and end parameters for 
> lists and strings. The count() method also has start and end parameters 
> for strings. But it has no such parameters for lists. Why?
> 
> However when I ask such things I noticed I get answers like: "Is there a 
> use case?" "You can do it some other way so it is not worth bothering."
> 
> Let me ask back: Do I really need to bother and justify it with a use 
> case in a case where the language can be easily made more consistent or 
> orthogonal without breaking anything?

Yes. If it's not going to be used, then there's not much point.
Practicality beats purity, and all that.

However, I will note that if you were to present us with a working patch
with documentation and unittests, then you'll probably get responses
along the lines of "Thank you!", instead.

-- 
Robert Kern
robert.kern at gmail.com

"In the fields of hell where the grass grows high
 Are the graves of dreams allowed to die."
  -- Richard Harter




More information about the Python-list mailing list