General question about Python design goals
Christoph Zwerschke
cito at online.de
Sun Nov 27 21:52:57 EST 2005
>>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?
Robert Kern wrote:
> Yes. If it's not going to be used, then there's not much point.
> Practicality beats purity, and all that.
I have nothing against "practicality beats purity". But to stay with the
examples I have given, in how far is writing list(t).index(x) more
practical than t.index(x)?
And by the way, if we are speaking about practicality here, are we
speaking about practicality for the Python developers or for the Python
users? This may be sometimes be in opposition.
Let me give an extreme example: Assume the count() method for strings
would have been called "numberofsubstringsinthestring()" and I argue it
should be called "count()" because that is shorter and how it is called
for lists. What should I give as a "use case" here? Must I give "use
cases" if the issue is about convenience/simplicity/elegance?
> 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.
Not everybody has the time and skills to provide that. Ordinary people
from the Python user base should be given the opportunity to make
suggestions for improvement - of course not in the tone of "I
demand...", but they should not be automatically regarded as "demanding"
if they just utter their opinion or make a suggestion either.
Even if I had the time and skills, before starting to work on a patch,
unittests etc. I still would first discuss with others whether my
suggestion is reasonable and would be appreciated by the "user base",
developers and the BDFL. Just take the example of the following patch:
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=403693&group_id=5470
It was not rejected by reason of missing unittests or documentation, but
the very idea was rejected.
Actually, I'm not keen on being a protagonist for this issue or starting
a hard-bitten discussion about this and defend the idea if everybody is
against or nobody cares. It does not bother me that much either.
But it just led me to the general question: Which significance actually
have design features such as orthogonality for Python?
-- Christoph
More information about the Python-list
mailing list