I’m just throwing this out there.
often when I write Objective-C, my method calls end up looking like this:
[you doYourThingWithThis:this that:that these:these those:those other:other];
This reads poorly and requires extra typing. It would be nice if the compiler just assumed that when no label is given, the label is the same as the argument name. The code would be just as understandable (more) than if the argument labels were actually there.
In Swift, this:
you.doYourThingWithThis(this, that:that, these:these, those:those, other:other)
you.doYourThingWithThis(this, that, these, those, other)
However, if you are the type that likes to name your variables a,b,c,d, no harm done, since then labels would be required, and it would still read OK
you.doYourThingWithThis(a, that:b, these:c, those:d, other:e)