Daniel Stutzbach wrote:
> On Fri, Feb 20, 2009 at 5:27 PM, Nick Coghlan <[email protected]
> <mailto:[email protected]>> wrote:
> 
>     Brett Cannon wrote:
>     > If you import pickle and call pickle.A() you will get -13 which is not
>     > what you are after.
> 
>     Ah, you may want to think about that a bit more. There's a reason
>     globals are looked up when they're used rather than when their function
>     is defined. Even in your own example, _B isn't defined at all when you
>     define A.
> 
> 
> No, I'm afraid Brett is quite right.  Globals are looked up when the
> function is executed, true, but they are looked up within the module
> that defined the function.  Functions defined in _pypickle would only
> call the _pypickle version of functions.

Oh, I see what you mean now. Looks like Brett's tracked substitution may
be the way to go then.

Cheers,
Nick.

-- 
Nick Coghlan   |   [email protected]   |   Brisbane, Australia
---------------------------------------------------------------
_______________________________________________
Python-Dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to