[swift-evolution] [Review] SE-0065 A New Model for Collections and Indices
Dave Abrahams
dabrahams at apple.com
Wed Apr 13 14:57:34 CDT 2016
on Wed Apr 13 2016, Dave Abrahams <swift-evolution at swift.org> wrote:
>> Reverse is the best opposite we have of advance, so it makes sense to
>> me.
>
> Oh, I get it.
>
>> Or we could use retreat. =) There are other pairs of words that work
>> as well, like “increment/decrement”.
>
> Yeah, unfortunately those carry an incorrect implication when the
> indices are numbers, because, e.g. the collection might be offsetting
> the number by 2 for each position. One could of course argue that using
> numbers that way as indices was a bad design choice.
>
> I'll have to think about that idea again. We considered and rejected it
> for a reason, but it might not be a really strong one. Thanks for
> bringing it up.
...and having talked it over at lunch, now I remember why we rejected
it: there's no good way to make a nonmutating version.
let x = c.incremented(i) // reads like an assertion about the past
let y = c.incrementing(i) // reads like it has side-effects and returns c, or
// a new version of c
APIs where the receiver returns a modified version of an argument don't
lend themselves to verb forms.
--
Dave
More information about the swift-evolution
mailing list