Guido van Rossum wrote: >> But, then it *should* be renamed to i.e. "__true_int__". One such place >> is in abstract.c sequence_repeat function. > > I don't like __true_int__ very much. Personally, I'm fine with calling > it __index__ after the most common operation. (Well, I would be since > I think I came up with the name in the first place. :-) Since naming > is always so subjective *and* important, I'll wait a few days, but if > nobody suggests something better then we should just go with > __index__.
An alternative would be to call it "__discrete__", as that is the key characteristic of an indexing type - it consists of a sequence of discrete values that can be isomorphically mapped to the integers. Numbers conceptually representing continuously variable quantities (such as floats and decimals) are the ones that really shouldn't define this method. I wouldn't mind __index__ though, as even though some of the use cases won't be strictly using the result as an index, the shared characteristic of being isomorphic to the integers should be sufficient to allow the term to make some sort of sense. This would hardly be the first case where names of operators are overloaded using imprecise terminology, after all. 'or', 'and', 'sub' and 'xor' aren't the right terms for set union, intersection, difference and disjunction, but they're close enough conceptually that the names still have meaning. Ditto for 'mul' and 'add' meaning repetition and concatenation for sequences (no comment on 'mod' and string formatting though. . .) Cheers, Nick. -- Nick Coghlan | [EMAIL PROTECTED] | Brisbane, Australia --------------------------------------------------------------- http://www.boredomandlaziness.org _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com