On 2/8/2012 11:13 AM, Brett Cannon wrote: > On Tue, Feb 7, 2012 at 22:47, Nick Coghlan <ncoghlan at gmail.com > I'm not sure such an addition would help much with the base > interpreter start up time though - most of the modules we bring in are > because we're actually using them for some reason. > It wouldn't. This would be for third-parties only. such as hg. That is what I had in mind. Would the following work? Treat a function as a 'loop' in that it may be executed repeatedly. Treat 'import x' in a function as what it is, an __import__ call plus a local assignment. Apply a version of the usual optimization: put a sys.modules-based lazy import outside of the function (at the top of the module?) and leave the local assignment "x = sys.modules['x']" in the function. Change sys.modules.__delattr__ to replace a module with a dummy, so the function will still work after a deletion, as it does now. -- Terry Jan Reedy
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