A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2006-March/062221.html below:

[Python-Dev] Making builtins more efficient

[Python-Dev] Making builtins more efficient [Python-Dev] Making builtins more efficientPhillip J. Eby pje at telecommunity.com
Thu Mar 9 19:35:00 CET 2006
At 08:51 AM 3/9/2006 -0800, Raymond Hettinger wrote:
> > Perhaps what I'm suggesting isn't feasible for reasons that have already
> > been discussed.  But it seems like it should be possible to make "while
> > True" as efficient as "while 1".
>
>That is going to be difficult as long as it is legal to write:
>
>     True = 0

In that case, it can obviously be determined statically that the builtin is 
shadowed, and optimization is impossible for that builtin in that module.

What *is* difficult is the somemodule.True = 0 case, and the 
somemodule.__dict__['True']=0 case, and the globals()['True'] = 0 case, and 
other such fiddling.

Personally, I think that such shenanigans (in the case where somemodule 
doesn't already have a module-level binding for the builtin) should not be 
allowed to change the semantics of optimized functions using that 
dictionary as a global namespace.

I think this is a reasonable implementation limit on dynamicity, although 
to be conservative I think we should only do this with -O in Python 2.5, if 
we do it at all.

More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4