[issue29358] Add tp_fastnew and tp_fastinit to PyTypeObject, 15-20% faster object instanciation
Josh Rosenberg
report at bugs.python.org
Tue Jan 24 14:30:34 EST 2017
Josh Rosenberg added the comment:
So just to be clear, the issue with non-string or non-unique keywords is purely about performance, right, not correctness/non-crashiness? Non-string keywords, while technically accepted by CPython, are at best barely legal by the language standard. The language standard for calls specifies that even using the **expression syntax "expression must evaluate to a mapping, the contents of which are treated as additional keyword arguments" and keywords_arguments only allows identifier=expression, where identifier is a legal variable name (and therefore, a str).
If misuse of ** unpacking is slower, but still works, and correct usage is significantly faster, I wouldn't consider an inability to fix the performance for the misuse case a blocking issue; nice to have, but making common, good code faster is worth making rare, bad code slower.
----------
nosy: +josh.r
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue29358>
_______________________________________
More information about the Python-bugs-list
mailing list