[Python-Dev] Very Strange Argument Handling Behavior

Maciej Fijalkowski fijall at gmail.com
Sat Apr 17 19:52:52 CEST 2010


On Sat, Apr 17, 2010 at 11:38 AM, Dino Viehland <dinov at microsoft.com> wrote:
> Benjamin wrote:
>> 2010/4/17 Guido van Rossum <guido at python.org>:
>> > On Sat, Apr 17, 2010 at 9:22 AM, Nick Coghlan <ncoghlan at gmail.com>
>> wrote:
>> >> Guido van Rossum wrote:
>> >>> Because Python promises that the object the callee sees as 'kwargs'
>> is
>> >>> "just a dict".
>> >>
>> >> Huh, I thought kwargs was allowed to be implemented as a
>> >> string-keys-only dict (similar to class and module namespaces) while
>> >> still be a valid Python implementation. I guess I was wrong.
>> >
>> > Actually I don't know about that. Is there language anywhere in the
>> > language reference that says this? What do IronPython, Jython, PyPy
>> > actually do?
>>
>> Similar to CPython, PyPy has dict versions optimized for strings,
>> which fall back to the general version when given non-string keys.
>
> IronPython as well.  The only place we use a string only dict is for
> new-style classes whose dict's are wrapped in a dictproxy.

And yet that breaks some code :-)


More information about the Python-Dev mailing list