[swift-evolution] For-loop revisited
Erica Sadun
erica at ericasadun.com
Tue Mar 8 12:26:18 CST 2016
So long as I don't have to wear a scarlet semicolon for the rest of my life.
-- E
> On Mar 8, 2016, at 11:19 AM, Maximilian Hünenberger <m.huenenberger at me.com> wrote:
>
> Oh... Missed that change. But my point still stands :)
>
> Best regards
> - Maximilian
>
> Am 08.03.2016 um 19:15 schrieb Erica Sadun <erica at ericasadun.com <mailto:erica at ericasadun.com>>:
>
>>
>>> On Mar 8, 2016, at 11:13 AM, Maximilian Hünenberger via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>>
>>> Actually you cannot use the global stride function anymore.
>>
>> https://github.com/apple/swift-evolution/blob/master/proposals/0006-apply-api-guidelines-to-the-standard-library.md <https://github.com/apple/swift-evolution/blob/master/proposals/0006-apply-api-guidelines-to-the-standard-library.md>
>>
>> extension Strideable {
>> - public func stride(to end: Self, by stride: Stride) -> StrideTo<Self>
>> }
>> +public func stride<T : Strideable>(from start: T, to end: T, by stride: T.Stride) -> StrideTo<T>
>>
>> extension Strideable {
>> - public func stride(through end: Self, by stride: Stride) -> StrideThrough<Self>
>> }
>> +public func stride<T : Strideable>(from start: T, through end: T, by stride: T.Stride) -> StrideThrough<T>
>>
>>
>>> I thought a method on "Range" which returns a stride would be easier to grasp:
>>>
>>> for x in 0.stride(to: 0.5, by: 0.03) { ... }
>>>
>>> // much faster to predict what is does even though it is less clear to a beginner
>>> for x in (0 ... 0.5).by(0.03) { ... }
>>>
>>> - Maximilian
>>>
>>>> Am 08.03.2016 um 18:56 schrieb Антон Жилин <antonyzhilin at gmail.com <mailto:antonyzhilin at gmail.com>>:
>>>>
>>>> It's already possible:
>>>>
>>>> for d in stride(from: 0, to: 5, by: 0.3) {
>>>> }
>>>>
>>>> Absolutely readable (despite all efforts to break it).
>>>> And I would passionately hate the special syntax for floating-point loops in Swift.
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>>> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160308/f6801f54/attachment.html>
More information about the swift-evolution
mailing list