On Tuesday, May 27, 2014 8:29:13 AM UTC+5:30, Steven D'Aprano wrote:
> On Mon, 26 May 2014 08:44:51 -0400, Roy Smith wrote:
> >> That makes even less sense. The build system runs under whatever
> >> version of Python it needs, and your code runs under whatever version
> >> of Python you like. The two don't affect each other at run time, and
> >> don't affect each other's testing dependencies.
> > The are tightly integrated, and share code.
> Well there's your problem, right there. Tight coupling is a *bad* thing,
> you're supposed to minimize it, not maximize it :-)
> I'm having trouble understanding why your build system should be
> integrated with your production code. You should, in principle, be able
> to replace your build system with one written in Perl or bash without
> having to touch a single line of your application. If what you say is
In theory, theory and practice are the same. In practice, they are not.
[Whether thats Einsten or Yogi Berra I am not sure. I guess they
are the same in principle :D ]
Somewhat more seriously, I see this as a problem with all the super-kewl
languages. I know it most closely with python and haskell but I think its true
across the board. It goes something like this:
- Language L is super-kewl
- Its so kewl it spawns its own ecosystem
- The ecosystem grows
- World domination is almost in sight -- everything to be done with
- Unfortunately super-kewl ≠ omnipotent
- Things start crumbling at the edges
Case(s) in point: debian's apt is a mishmash of perl,shell etc
However it is more powerful than python's pip or Haskell's cabal.