scaling problems

Nick Craig-Wood nick at craig-wood.com
Tue May 20 04:30:05 EDT 2008


Marc 'BlackJack' Rintsch <bj_666 at gmx.net> wrote:
>  On Tue, 20 May 2008 13:57:26 +1000, James A. Donald wrote:
> 
> > The larger the program, the greater the likelihood of inadvertent name
> > collisions creating rare and irreproducible interactions between
> > different and supposedly independent parts of the program that each
> > work fine on their own, and supposedly cannot possibly interact.
> 
>  How should such collisions happen?  You don't throw all your names into
>  the same namespace!?

If you ever did a lot of programming in C with large projects you have
exactly that problem a lot - there is only one namespace for all the
external functions and variables, and macro definitions from one
include are forever messing up those from another.  I suspect the OP
is coming from that background.

However python doesn't have that problem at all due to its use of
module namespaces - each name is confined to within a module (file)
unless you take specific action otherwise, and each class attribute is
confined to the class etc.

>From the Zen of Python "Namespaces are one honking great idea -- let's
do more of those!" - as a battle scarred C programmer I'd agree ;-)

-- 
Nick Craig-Wood <nick at craig-wood.com> -- http://www.craig-wood.com/nick



More information about the Python-list mailing list