Francois Pinard <pinard at iro.umontreal.ca> writes: > But I might be missing the meaning of the original question. If by any > chance you feel like elaborating a bit, that could be instructive for me. The question is whether the code containing the Python implementation should be a shared library, i.e. libpythonxy.dll, which would give a very small stub python executable. I think this causes more bad than good because: 1. If there is a single <prefix>/python executable, there is just about the same amount of sharing. Virtually all applications using Python use the single executable, and they all share that single executable, both on disk and in memory. The only significant exception might be mod_python, which currently needs to link its own copy of the Python implementation. The various run-time copies of mod_python (across different Apache processes) still get shared. 2. Having libpythonxy.so causes significant maintenance problems. In some installations, Python might fail to find libpython after installation, because <prefix>/lib is not in the search path of the shared linker, or ldconfig might need to be run before it is found. 3. Having libpythonxy.so increases the start-up time, as an additional directory is added to the ld.so search path, which needs to be searched for any shared library loaded by Python, including all C extension modules which are not builtin. 4. Having libpythonxy.so decreases the run-time efficiency, as now all code needs to be compiled as PIC. 5. Having libpythonxy.so creates a maintenance cost, as, for any implementation of that feature, it fails on some system because of obscure compiler/linker/dynamic linker aspects that haven't been considered. I expect several years to pass until no new bug reports about that feature come in. So it has only disadvantages and no advantages, and is thus disabled by default. It is only implemented to decrease the maintenance burden of having to respond to people asking for the feature. Regards, Martin
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4