[Python-Dev] Re: let's not stretch a keyword's use unreasonably, _please_...
Alex Martelli
aleaxit at yahoo.com
Sat Oct 25 04:58:05 EDT 2003
More information about the Python-Dev mailing list
Sat Oct 25 04:58:05 EDT 2003
- Previous message: [Python-Dev] Re: let's not stretch a keyword's use unreasonably, _please_...
- Next message: [Python-Dev] Re: let's not stretch a keyword's use unreasonably, _please_...
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Thursday 23 October 2003 07:51, Terry Reedy wrote: ... > So I really *don't* need global. Perhaps a new builtin > > def me(): > import sys > return sys.modules[__name__] Or, we can make the _compiler_ aware of what is going on (and get just the same semantics as global) by accepting either a non-statement keyword (scope, as I suggested elsewhere) or a magicname for import, e.g. import __me__ as Barry suggested. Then __me__.x=23 can have just the same semantics as today "x=23" has if there is some "global x" somewhere around, and indeed it could be compiled into the same bytecode if __me__ was sufficiently special to the compiler. [[ If __me__ was assigned to other objects, subjected to setattr, etc, it would lose all special powers, and become restricted to whatever restrictions may apply now or in the future to "setting stuff in other modules". ]] We'd get more clarity _for human readers_ by thus flagging every assignment-to-module-level-name *in the very spot it's happening* and avoiding the inappropriate term "global" -- to the compiler it's all the same, but humans are important, too. Alex
- Previous message: [Python-Dev] Re: let's not stretch a keyword's use unreasonably, _please_...
- Next message: [Python-Dev] Re: let's not stretch a keyword's use unreasonably, _please_...
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list