[Python-ideas] Null coalescing operators

Andrew Barnert abarnert at yahoo.com
Fri Sep 18 22:59:24 CEST 2015


On Sep 18, 2015, at 12:28, Andrew Barnert via Python-ideas <python-ideas at python.org> wrote:
> 
> Personally, for whatever my opinion is worth (not that much), I don't have a good opinion on how it would work in Python without seeing lots of serious examples or trying it out. But I think this would be relatively easy to hack in at the tokenizer level with a quick&dirty import hook. I'll attempt it some time this weekend, in hopes that people can play with the feature. Also, it might be possible to do it less hackily with MacroPy (or it might already be part of MacroPy--often Haoyi's time machine is as good as Guido's).

You can download a quick&dirty hack at https://github.com/abarnert/nonehack

This only handles the simple case of identifier?.attribute; using an arbitrary target on the left side of the . doesn't work, and there are no other none-coalescing forms like ?(...) or ?[...]. (The latter would be easy to add; the former, I don't think so.) But that's enough to handle the examples in the initial email.

So, feel free to experiment with it, and show off code that proves the usefulness of the feature.

Also, if you can think of a better syntax that will make Guido less sad, but don't know how to implement it as a hack, let me know and I'll try to do it for you.


More information about the Python-ideas mailing list