Python as Guido Intended
apardon at forel.vub.ac.be
Thu Nov 24 11:21:51 CET 2005
Op 2005-11-23, rhettinger at gmail.com schreef <rhettinger at gmail.com>:
> My own experience with adapting to Guido's design-view relates to
> tuples and lists. To Guido, tuples are for records and lists are for
> iteration. My own inclination is to view tuples as immutable lists.
> Accordingly, it seems obvious to me that tuples should have count() and
> index() methods for better substitutability. However, I've learned
> that adapting to Guido's world-view leads to happiness because Python's
> function signatures tend to reflect his design view. So, when I'm
> thinking the Guido way, my code comes together seamlessly. When I
> persist with a conflicting viewpoint, I find myself having to make
> conversions, write work-arounds, or create more helper functions than
> otherwise needed.
But only Guido, thinks like Guido and then even Guido may now think
differently than he thought before. And what if Guido had a bad day
when he came up with something, should we just adopt to what he
had in mind without questioning them.
Sure, when you have a particular job to finish, you better adapt
to how the language actually works. But when the argument is
about how the language could be better, in whatever way you
want to fill that in, just arguing that one should adapt to
Guido style, is not an argument. Maybe an other approach
could work better.
Since I have been working with python I have seen the following
changes not in a particular order:
augmented arithmetic operators.
descriptors (and properties)
new style classes
unifictation of longs and ints
I wonder how much of these would have come about if everybody would
just have adapted to the langauge as it was, instead of wondering
how things could be improved. For all changes one could argue
that those who wanted something from this list before it came
about, that they were fighting the language.
When we notice that people are fighting the language, sometimes
the best approach is to change the language so that there is
less reason to fight the language.
More information about the Python-list