From: Greg Ewing <greg.ewing@canterbury.ac.nz> Sent: Tuesday, June 25, 2013 1:15 AM
I dispute that they're different names. In the use cases I have in mind, it's no accident that the two names are spelled the same, because conceptually they represent the very same thing.
I've already asked Anders this, but let me ask you as well: What are the use cases you have in mind? As I see it, there are three cases (barring coincidences, which are obviously irrelevant) where this syntax could make a difference: 1. dict constructor 2. str.format 3. forwarding functions (like my example with get_appdir_url) #1 and #2 are definitely special cases. So, is it #3, or is there some broader use case here? And, if it is just #3, do you have the same argument that (I think) Anders has, or a different one? Again, let's try to use a realistic example instead of toy expressions that have no meaning no matter how they're written: def split(self, sep=None, maxsplit=-1): return self.__class__(self.wrapped_str.split(sep, maxsplit)) def split(self, *args, **kwargs): return self.__class__(self.wrapped_str.split(*args, **kwargs)) Anders' position seems to be that people _should_ be writing it as: def split(self, sep=None, maxsplit=-1): return self.__class__(self.wrapped_str.split(sep=sep, maxsplit=maxsplit)) … and the only reason we don't all write that is the repetition. I think he's wrong; there are perfectly good reasons to prefer the more common alternatives, so getting rid of the repetition would make very little difference. So, is this your case, and your argument? Sorry to belabor this, but I believe that if I'm missing the point, it's quite possible that Stephen and most of the other people against the idea are missing it in the same way.
That's quite a different situation -- these two Stephens really are different… And you would want to avoid assigning one to the other.
But you might want to pass one in place of the other. When Tokugawa Ieyasu said "Let your step be slow and steady, that you stumble not," was he talking about being cautious and moderate in changing the Python grammar file, or just about sieging castles? How will we know without an expert?