[Python-Dev] Set the namespace free! (original) (raw)
Bartosz Tarnowski bartosz-tarnowski at zlotniki.pl
Thu Jul 22 16:04:00 CEST 2010
- Previous message: [Python-Dev] PEP 360 has outdated contents
- Next message: [Python-Dev] Set the namespace free!
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hello, guys.
Python has more and more reserved words over time. It becomes quite annoying, since you can not use variables and attributes of such names. Suppose I want to make an XML parser that reads a document and returns an object with attributes corresponding to XML element attributes:
elem = parse_xml("") print elem.param boo
What should I do then, when the attribute is a reserver word? I could use trailing underscore, but this is quite ugly and introduces ambiguity.
elem = parse_xml("") print elem.for_ #????? elem = parse_xml("") print elem.for__ #?????
My proposal: let's make a syntax change.
Let all reserved words be preceded with some symbol, i.e. "!" (exclamation mark). This goes also for standard library global identifiers.
!for boo in foo: !if boo is !None: !print(hoo) !else: !return !sorted(woo)
This would allow the user to declare any identifier with any name:
for = with(return) + try
What do you think of it? It is a major change, but I think Python needs it.
-- haael
- Previous message: [Python-Dev] PEP 360 has outdated contents
- Next message: [Python-Dev] Set the namespace free!
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]