Attack a sacred Python Cow

Paul Boddie paul at boddie.org.uk
Thu Jul 24 17:46:29 CEST 2008


On 24 Jul, 12:02, "Sebastian \"lunar\" Wiesner"
<basti.wies... at gmx.net> wrote:
>
> Fortunately, Python isn't designed according to your ideas, and won't
> change, so consider your posting a waste of time.

This is the kind of petty response that serves only to shut down
discussion that might actually lead to genuine attempts to remedy
issues (or "warts") with Python. Although the tone of the complaint
was badly chosen, it is always worth jumping over the fence and
considering whether things could be made better. Without complaints
being aired, how do you expect any advances around things like the
"old and outdated modules in the standard library, or real
showstoppers in Python (e.g. the GIL)" that you mention elsewhere?

> If feeling like bringing such old "issues" up again next time, spend
> your time learning another programming language, as you would
> obviously not get happy with Python anyway ...

Such a constructive response that is! Instead, I think it is
interesting to consider why methods still require an explicit "self"
parameter - something which has been discussed previously - and
whether there might be a case for omitting it from the signature -
perhaps in a variant of Python - in methods which are defined within
class definitions (as opposed to those assigned to classes later).

Indeed, there's scope for experimentation with Python variants, just
to investigate whether certain features added to CPython can be
considered essential, and which features might be considered of
marginal benefit. I recall that some features (eg. lexical scoping and
closures) were eventually added to Python partly to remedy issues with
lambda definitions, but also because the lack of such features was
cited repeatedly by proponents of other languages. In such a climate,
it can be easier to "meet the challenge" and implement features to
silence the critics rather than to insist that they are of marginal
benefit (although it's interesting to note this in a thread where
improvement suggestions are deemed "a waste of time" - I suppose the
community is now more resistant to suggestions from "unofficial"
sources).

A review of such language "enhancement" decisions would be
interesting, but since one shouldn't expect this from the CPython
implementers, I feel that it is the role of others to do so in their
own experiments. Of course, such experiments are often derided as
"lesser Pythons" or misunderstood, but that's another unfortunate
trait exhibited by parts of the Python community.

Paul



More information about the Python-list mailing list