[Python-Dev] collections module

Guido van Rossum guido at python.org
Mon Jan 12 12:42:28 EST 2004

[Raymond Hettinger]
> > I am frankly surprised that so many here think that a collections
> > module would be bad for the language.  Go figure.  It's not like
> > these are new, untried ideas -- the goal was supposed be improving
> > productivity by providing higher level tools.  A fast underlying
> > implementation was just icing on the cake.
> I think the "fast implementation" issue has triggered people's
> comments, rather than the "higher level tools" one.
> For the record, I'm +1 on the idea (as far as "higher level tools"
> goes).  I'm not too bothered, in practice, how efficient the
> implementation is, as long as it's not visibly slower than using
> lists/dicts directly :-)

I may be the source of some of this kind of feedback.  My main concern
is that when we offer too many fast (*fast*!) data types competing
with list and dict, inexperienced users will more easily be mislead
into picking the wrong data type for their application, simply by the
overwhelming choices.  Something that advertises itself as *fast*! is
incredibly attractive to many people who have absolutely no need for
it -- just like automobiles that can go several times the speed limit.

I'm not worried about the absolute newbies -- they will read the
tutorial and use the training wheels provided by the examples.  It's
the middle tier of programmers who have very little understanding of
algorithm complexity (that small amount of knowledge that can be such
a dangerous thing) but are excited by all the new and wondrous stuff
hidden in the standard library.  Marking it with danger signs or
"advanced use only" will have the inverse affect -- these are even
more attractive than speed claims.

Remember Knuth: the root of all evil lies in premature optimization.

--Guido van Rossum (home page: http://www.python.org/~guido/)

More information about the Python-Dev mailing list