>> debug(=value, =another) > > What if it's not a simple name, though? The OP gave this (somewhat > simplistic, but indicative) example: > > print(f'next: {value+1!d}')
debug(next=value+1) Still shorter than the proposed syntax and much more readable. If you do this a lot you’d probably call the function just “d” too. > AIUI, keyword arguments are all supposed to be legal names/atoms, so > you aren't supposed to do something like this: > > debug(**{"value+1":value+1}) Really? That seems pretty weird to me. I’ve used that type of thing in production code from time to time. > even though it does work in current versions of CPython. So even if > your "=value" syntax did permit it, I wouldn't want to guarantee that > in the language. Well I haven’t suggested my syntax would support that. But yea, I realize I was pretty vague in my last email! > (Side point: Please watch your mailer. The debug() function above has > smart quotes in it, which means it can't be copied and pasted into the > interpreter. Not a big problem with trivially-simple functions, but if > it's something larger, it's annoying to have to track down > "SyntaxError: invalid character in identifier" to figure out why it's > not doing what you think it is.) Huh. I’ll look into it. Thanks for the heads up. / Anders _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/