On Sat, 24 Jun 2017 16:28:29 +0000 Brett Cannon <br...@python.org> wrote: > > > > My experience is that: > > - you want lazy imports to be implicit, i.e. they should work using the > > "import" statement and not any special syntax or function invocation > > - you want a blacklist and/or whitelist mechanism to restrict lazy > > imports to a particular set of modules and packages, because some > > modules may not play well with lazy importing (e.g. anything that > > registers plugins, specializations -- think singledispatch --, etc.) > > > > For example, I may want to register the "tornado", "asyncio" and "numpy" > > namespaces / packages for lazy importing, but not the "numba" namespace > > as it uses registration mechanisms quite heavily. > > > > (and the stdlib could be part of the default lazy import whitelist) > > > > That's all true for an end user's application, but for the stdlib where > there is no knock-on effects from dependencies not being loaded lazily I > don't think it's quite as critical. Plus lazy loading does make debugging > harder by making loads that trigger an exception happen at the line of > first use instead of at the import line, so I don't know if it's desirable > to automatically make the whole stdlib be lazily loaded from the outset > (which is what would be required since doing it in e.g. sitecustomize.py > wouldn't happen until after startup anyway).
Yes, you are right. I was assuming that if we take the time to include a lazy import system, we'd make it available for third-party applications, though ;-) Regards Antoine. _______________________________________________ Speed mailing list Speed@python.org https://mail.python.org/mailman/listinfo/speed