GIL in alternative implementations
Jean-Paul Calderone
calderone.jeanpaul at gmail.com
Tue Jun 7 08:07:03 EDT 2011
On Jun 7, 12:03 am, "Gabriel Genellina" <gagsl-... at yahoo.com.ar>
wrote:
> En 2011年5月28日 14:05:16 -0300, Steven D'Aprano
> <steve+comp.lang.pyt... at pearwood.info> escribi :
>>>>>>>>>> > On 2011年5月28日 09:39:08 -0700, John Nagle wrote:
>> >> Python allows patching code while the code is executing.
>> > Can you give an example of what you mean by this?
>> > If I have a function:
>> > def f(a, b):
> > c = a + b
> > d = c*3
> > return "hello world"*d
>> > how would I patch this function while it is executing?
>> I think John Nagle was thinking about rebinding names:
>> def f(self, a, b):
> while b>0:
> b = g(b)
> c = a + b
> d = self.h(c*3)
> return "hello world"*d
>> both g and self.h may change its meaning from one iteration to the next,
> so a complete name lookup is required at each iteration. This is very
> useful sometimes, but affects performance a lot.
>
And even the original example, with only + and * can have side-
effects. Who knows how a defines __add__?
Jean-Paul
More information about the Python-list
mailing list