[swift-evolution] [Pitch] Enumerate from offset
Pavol Vaskovic
pali at pali.sk
Wed May 10 02:50:05 CDT 2017
One more note:
On Sun, May 7, 2017 at 8:51 PM, Ben Cohen <ben_cohen at apple.com> wrote:
>
> let words = ["five","four","three","two","one","blastoff!"]
> ((0...5).reversed() |> { zip($0, words) })
> .forEach { print($0.0,$0.1, separator: ": ") }
>
> ...
>
> ((0...5).reversed() |> zip(_, words))
> .forEach { print($0.0,$0.1, separator: ": ") }
>
The code above demonstrates that replacing `enumerated` with `zip` gives
you anonymous tuples that need to be accessed with positional properties.
In contrast, the tuple returned from `enumerated` gives you named tuple
(offset: Int, element: Element).
Does this change your opinion when you take into account the sorry state of
tuple handling in Swift 4, that prevents you from writing concise and
readable functional code? See:
SR-4745 for (index, (a, b)) in dict.enumerated() produces an error
https://bugs.swift.org/browse/SR-4745
SR-4738 Can not decompose nested tuple in closure arguments
https://bugs.swift.org/browse/SR-4738
Best regards
Pavol Vaskovic
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170510/cc04b86a/attachment.html>
More information about the swift-evolution
mailing list