in statement and namespace type ideas
Bjorn Pettersen
BPettersen at NAREX.com
Sat Jun 16 17:02:10 EDT 2001
> From: Roman Suzi [mailto:rnd at onego.ru]
>
> Hello,
>
> right now namespace handling in Python uses dicts,
> however, docs say it could change.
>
> I can't be sure that my code which uses globals() to merge,
> for example,
> cgi-form variables with globals namespace will work with future Python
I think this is a Perl'ism which we shouldn't repeat here (it only works
if the cgi vars are valid Python vars, otherwise it will blow up rather
ungracefully).
> versions. There are other examples where I need to transfer some
> variables from one namespace to another. Dict is good type
> for namespace,
> but maybe it's time to propose new mapping type - namespace -
> to do things I described?
>
> I also thought about absent "with" operator and how it could be used
> in Python. Maybe it is beneficial to have "with" syntax like in the
> followin example:
[snip example]
> Are these ideas worth serious consideration?
Perhaps, although I didn't find anything particularly compelling in your
argument. Moving values from one namespace to another is easily handled
by return values and assignment -- or if you're returning a large number
of variables, by wrapping them in an object or a dictionary.
The "with" keyword leads to a lot of implied context (especially when
nested). While it may make code easier to write for a "lazy" programmer,
readability and maintainability suffers. I think "explicit is better
than implicit" is the better alternative here.
-- bjorn
More information about the Python-list
mailing list