This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author larry
Recipients larry, pdmccormick, serhiy.storchaka, zach.ware
Date 2015-04-15.03:56:26
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1429070187.12.0.750682067909.issue23935@psf.upfronthosting.co.za>
In-reply-to
Content
In the case of namedtuple and Enum, the parameter represents a sequence of strings--order is significant.  With the 'types' parameter for converters, the internal model was always meant to be a *set* of strings.  The order was explicitly *not* significant.  So types="str robuffer" and types="robuffer str" should be identical.  Your "harder to search in sources" was already true.

Argument Clinic isn't something very many people will learn.  Lots of people will read the conversions, but few will ever write a conversion, and they won't do it often and they'll forget the funny details. So we shouldn't make the API quirky and succinct at the expense of readability.  The best API will be one that makes the code easier to read.

I think requiring types to be a set of strings makes it easier to read because it makes the semantics obvious.  If you see
   types="str robuffer"
you aren't sure if order is significant, but if you see
   types={'str', 'robuffer'}
you are certain it is not.
History
Date User Action Args
2015-04-15 03:56:27larrysetrecipients: + larry, zach.ware, serhiy.storchaka, pdmccormick
2015-04-15 03:56:27larrysetmessageid: <1429070187.12.0.750682067909.issue23935@psf.upfronthosting.co.za>
2015-04-15 03:56:27larrylinkissue23935 messages
2015-04-15 03:56:26larrycreate