[swift-evolution] Feature proposal: Range operator with step
Dave Abrahams
dabrahams at apple.com
Tue Apr 5 18:23:59 CDT 2016
on Tue Apr 05 2016, Stephen Canon <swift-evolution at swift.org> wrote:
> On Apr 5, 2016, at 3:22 PM, Erica Sadun via swift-evolution
> <swift-evolution at swift.org> wrote:
>
> On Apr 5, 2016, at 4:17 PM, Dave Abrahams via swift-evolution
> <swift-evolution at swift.org> wrote:
>
> on Tue Apr 05 2016, Erica Sadun
> <swift-evolution at swift.org> wrote:
>
> On Apr 5, 2016, at 1:54 PM, Dave Abrahams
> <dabrahams at apple.com> wrote:
> IMO this:
>
> (-9...0).reverse()
>
> is better than
>
> stride(from: 0, to: -10, by: -1)
>
> What do you think?
>
> The latter better reflects an author's actual intent. The former
> depends on
> implementation details, which can be hazy, especially, around the
> edge cases. It
> is quicker to read, understand, and verify that the latter is what
> is
> meant.
>
> Except that there seems to be some confusion over what "to:" means,
> right?
>
> obviously (0..<-10).by(-2) would be best.
>
> (0 ..> -10).by(-2)?
>
> Maybe having another range operator is overkill, but ..< seems pretty bonkers
> here.
I can't see any excuse for putting the smaller number on the right. If
one really needs the numbers in that order, then I agree a stride free
function is better.
--
Dave
More information about the swift-evolution
mailing list