[Python-Dev] Great Renaming - Straw Man 0.2

Ka-Ping Yee ping@lfw.org
Sun, 26 Mar 2000 12:34:11 -0800 (PST)

On Sun, 26 Mar 2000, Greg Stein wrote:
> If a module does not make *obvious* sense to be in a package, then it
> should not be there. For example: locale. That is not about numbers or
> about text. It has general utility. If there was an i18n package, then it
> would go there. Otherwise, don't force it somewhere else. Other packages
> are similar, so don't single out my comment about locale.

I goofed.  I apologize.  Moshe and Greg are right: locale isn't
just about numbers.  I just read the comment at the top of locale.py:

    "Support for number formatting using the current locale settings"

and didn't notice the

    from _locale import *

a couple of lines down.

"import locale; dir(locale)" didn't work for me because for some
reason there's no _locale built-in on my system (Red Hat 6.1,
python-1.5.1-10).  So i looked for 'def's and they all looked
like they had to do with numeric formatting.

My mistake.  "locale", at least, belongs at the top level.

Other candidates for top-level:

    bisect              # algorithm
    struct              # more general than "bin" or "data"
    colorsys            # not really just for image file formats
    yuvconvert          # not really just for image file formats
    rlcompleter         # not really part of the interpreter
    dl                  # not really just about files

Alternatively, we could have: ui.rlcompleter, unix.dl

(It would be nice, by the way, to replace "bisect" with
an "algorithm" module containing some nice pedagogical
implementations of things like bisect, quicksort, heapsort,
Dijkstra's algorithm etc.)

The following also could be left at the top-level, since
they seem like applications (i.e. they probably won't
get imported by code, only interactively).  No strong
opinion on this.


Also... i was avoiding calling the "unix" package "posix"
because we already have a "posix" module.  But wait... the
proposed tree already contains "math" and "time" packages.
If there is no conflict (is there a conflict?) then the
"unix" package should probably be named "posix".

-- ?!ng

"In the sciences, we are now uniquely privileged to sit side by side
with the giants on whose shoulders we stand."
    -- Gerald Holton