What's so funny? WAS Re: rotor replacement

Skip Montanaro skip at pobox.com
Sat Jan 29 08:16:43 EST 2005


    >> http://www.python.org/pypi
    >> THIS IS ALL PYTHON.

    Paul> No.  Those are programs people have written in Python or as Python
    Paul> extensions.

What's your point?  That I have to download and perhaps install them to use
them?  In that case, how are these two scenarios different:

    * I have to download and build the MySQLdb package to talk to MySQL
      servers from Python code

    * I have to ensure that the readline library and include files are
      installed on my system before the readline module (which is included
      in the core distribution) can be built

I and many other people happily use external packages other people have
written as well as make stuff available.  My guess is that you do as well.
If everyone adopted your position that it wasn't Python unless it had been
added to the core, we'd all be reinventing lots of wheels or tackling much
less challenging tasks, if we programmed in Python at all.  Here's an
incomplete list of stuff not in the core I have used happily over the past
several years to do my jobs using Python:

    * MySQLdb, Sqlite, pycopg, sybase-python - all database modules
    * CSV, Object Craft's csv, DSV - csv modules predating csv in the core
    * SpamBayes
    * Quixote
    * Docutils
    * MoinMoin
    * Pyrex
    * Psyco
    * PyInline
    * PyGTK
    * xmlrpclib before it was in the core
    * MAL's mx.DateTime before the core datetime module was available
    * timeout_socket before sockets supported timeouts

Many of those things I could never have written myself, either for lack of
time, lack of skill or both.  I'm grateful they were available when I needed
them and feel no qualms about using them even though they are not
distributed with Python proper.

Notice another interesting feature of several of those items: csv,
xmlrpclib, mx.DateTime, timeout_socket.  They were all modules I used that
eventually wound up in the core in some fashion.  They didn't go in the core
first, then demonstrate their usefulness.  It was the other way around.

Not everything that is useful belongs in the core distribution.  I think you
are confusing "batteries included" with "everything, including the kitchen
sink".

Skip



More information about the Python-list mailing list