[Python-3000] packages in the stdlib

Antoine Pitrou solipsis at pitrou.net
Wed May 31 19:19:37 CEST 2006


Le mercredi 31 mai 2006 à 09:57 -0700, Brett Cannon a écrit :
> 
> That might be true of http, but what about modules with a more
> ambiguous name? 

Then perhaps the name can be made less ambiguous ;)
For example "ElementTree" could be named "xmltree", or whatever.

> But with Java (don't have much .NET experience) the issue is they put
> data structures in java.util which doesn't explain anything.  But if
> it had been named datastruct or something more meaningful would it be
> so bad? 

No, but it still would be additional baggage to remember.
It is clear a "deque" is a collection and a "heapq" is a specific kind
of data structure, so why try to categorize them whereas the
categorization does not bring any additional information or
functionality to the programmer?

> We are adults, but doesn't that mean we can also be organized?  We are
> past the point of keeping our toys in one big basket and instead have
> organized shelves where we separate our Transformers from our Tonka
> trucks. 

But it is very difficult to come with a hierarchy that will be
reasonably intuitive.
Do we put "http" in "net", "protocols", "net.protocols"?
Does "email" warrant its own package? If so, do we put "imap" or "pop3"
in "email" or in "protocols"?
Is "web" separate from "net"? What about "url"?
etc.

The documentation can be topically structured, which is indeed handy
when discovering Python and its stdlib, but why force the categorization
on the programmer while it does not bring any benefits?

Regards,

Antoine.




More information about the Python-3000 mailing list