(original) (raw)
(The lurker awakes...)
> If not that I suggest something like __inject_builtins__. ThisYou're misunderstanding the reason why __builtins__ exists at all. It
> implies it's a command to eval/exec, and doesn't necessarily reflect
> your current builtins (which are canonically accessible as an
> attribute of your frame.)
is used *everywhere* as the root namespace, not just as a special case
to inject different builtins.
ATM I'm torn between __root__ and __python__.
Something with the word "global" speaks to it's real effect, except that the word already has an established meaning in Python as being 'global to the module level', and modifying \_\_builtins\_\_ lets you be "global to the entire universe of that instance"
So I would humbly suggest \_\_universal\_\_. The names within are available everywhere. 'root' speaks to me too much of trees, and while namespaces may be tree-like, \_\_root\_\_ alone doesn't say "root namespace"... and \_\_root\_namespace\_\_ is long.
(Then again, long for a feature that should only be used with care isn't a bad thing)
--Stephen