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 
correct, your design tends towards the sort of perplexing errors like "We 
added extra debugging code to the build script, and now the application 
won't print!"

The programmer's attitude towards tightly coupled code ought to be like 
Batman's attitude towards crime: something to be stamped out, at any 
cost, unless it is absolutely for the purpose of a higher cause.

In Batman's case that higher cause is justice and the good of Gotham 
City. What's your higher cause?

Steven D'Aprano

Reply via email to