pythonXX.dll size: please split CJK codecs out
rrr at ronadam.com
Mon Aug 22 00:51:04 CEST 2005
Martin v. Löwis wrote:
> Ron Adam wrote:
>>I would put the starting minimum boundary as:
>> 1. "The minimum required to start the python interpreter with no
>>additional required files."
>>Currently python 2.4 (on windows) does not yet meet that guideline, so
>>it seems some modules still need to be added while other modules, (I
>>haven't checked which), are probably not needed to meet that guideline.
> I'm not sure, either, but I *think* python24 won't load any .pyd file
> on interactive startup.
>>This could be extended to:
>> 2. "The minimum required to run an agreed upon set of simple Python
>>I expect there may be a lot of differing opinions on just what those
>>minimum Python programs should be. But that is where the PEP process
> As I mentioned earlier, there also should be a negative list: modules
> that depend on external libraries should not be incorporated into
This fits under the above, rule #1, of not needing additional files.
Most notably, this rules out zlib.pyd, _bsddb.pyd,
> and _ssl.pyd, all of which people may consider to be useful into these
> simple programs.
I would not consider those as being part of "simple" programs. But
that's only an opinion and we need something more objective than opinion.
Now that I think of it.. Rule 2 above should be...
2. "The minimum (modules) required to run an agreed upon set of
"common simple" programs.
Frequency of use is also an important consideration.
Maybe there's a way to classify a programs complexity based on a set of
So... program simplicity could consider:
1. Complete program is a single .py file.
2. Not larger than 'n' lines. (some reasonable limit)
3. Limited number of import statements.
(less than 'n' modules imported)
4. Uses only stdio and/or basic file operations for input
and output. (runs in interactive console or command line.)
Then ranking the frequency of imported modules from this set of programs
could give a good hint as to what might be included and those less
frequently used that may be excluded.
Setting a pythonxx.dll minimum file size goal could further help. For
example if excluding modules result is less than the minimum goal, then
a few extra more frequently used modules could be included as a bonus.
This is obviously a "practical beats purity" exercise. ;-)
More information about the Python-list