A few questions about customization and the docs, TIA:
http://www.python.org/dev/doc/devel/ref/customization.html tosses off this sentence in the section on rich comparisons:
"A rich comparison method may return NotImplemented if it does not implement the operation for a given pair of arguments."
...but it says nothing about the effect that will have. Using Thomas Heller's search engine, I found http://www.python.org/dev/doc/devel/ref/types.html#l2h-59, which says
"...Numeric methods and rich comparison methods may return this value if they do not implement the operation for the operands provided. (The interpreter will then try the reflected operation, or some other fallback, depending on the operator.) "
This seems like the wrong place to bury the description of the mechanism for operating on heterogeneous arguments. Shouldn't a short description go into the Customization section of the docs?
It also mentions, "There are no reflected (swapped-argument) versions of these methods (to be used when the left argument does not support the operation but the right argument does)..."
since these are the first binary operators described the whole concept of reflected methods hasn't been introduced yet, and the user has no reason to think that reflected versions should exist.
[incidentally, "reflected" and "reflection" produce no hits with Thomas' engine]