On Fri, Nov 13, 2009 at 6:44 PM, Steven D'Aprano
<steve@pearwood.info> wrote:
On Fri, 13 Nov 2009 09:36:10 pm Anand Balachandran Pillai wrote:
> It could be something as simple as a "require" keyword which could
> pull in the depdencies if not found. Perhaps at the top of your
> module,
>
> require (stuff, '1.27')
> import stuff
So Python, the *language*, has to become a package management system as
well as a programming language?
No thank you.
At most, perhaps there could be a package management tool in the
standard library:
try:
import stuff
except ImportError:
import packman
found = packman.requires(stuff, '1.27')
if found:
import stuff
else:
fail()
That was just a suggestion, don't take it literally. My intention
was something similar to the stuff you have written above.
It would be however useful to standardize the pkg manager
"packman" to something in the standard library however.
> Anyone who takes a quick look at the Python std library now is
> sure to feel that there is an overkill of stuff there, which could
> be classified and packaged better than dumping into the language
> build.
I don't.
I think the std library could possibly be organised better, but just
because something isn't useful to me right now, doesn't mean it isn't
useful to someone, and may be useful to me tomorrow.
Ah yes, the only problem is that for any updates/fixes to your
module, you need to wait for the language release which is not
very much an ideal situation IMHO. Especially now when we are
in discussions about end of life of 2.x etc...
W.r.t the original analogy, batteries v 1.1 are included with the torch 1.1,
but if you want battery upgrade to 1.2, you need to buy torch 1.2..
--
Steven D'Aprano