[Python-Dev] New syntax for 'dynamic' attribute access (original) (raw)
Raymond Hettinger python at rcn.com
Mon Feb 12 18:52:42 CET 2007
- Previous message: [Python-Dev] New syntax for 'dynamic' attribute access
- Next message: [Python-Dev] New syntax for 'dynamic' attribute access
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
[Raymond Hettinger]
Rather than munge existing syntaxes, an altogether new one would be more clear:
self->name = self.metadata->name
[Ben North]
One thing which comes to mind about this one is that, for C/C++ programmers, the difference between
obj.member and obj->member is the interpretation of the thing on the left of the dot or arrow, whereas the PEP is discussing a new interpretation of the thing on the right of the dot.
Try not to get hung-up on meanings from other languages. Any simple syntax will have associations in other languages. It is more important that we don't create a syntax which already has strong associations in Python (i.e. curly braces, dots, and square brackets). Those syntaxes would make the language harder to mentally parse.
I would like to give the -> syntax a chance as is it simple and it is provides a nice visual distinction between closely related concepts:
a.name -- getattr(a, 'name')
a->name -- getattr(a, name)
Raymond
- Previous message: [Python-Dev] New syntax for 'dynamic' attribute access
- Next message: [Python-Dev] New syntax for 'dynamic' attribute access
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]