As am I. I like that the while clause can be optional, but I don't see the point of banning "while true".
- Dave Sweeris > On May 10, 2016, at 14:10, Xiaodi Wu via swift-evolution > <[email protected]> wrote: > > Nicholas wrote that he would like `while true` to be a compile-time error. > I'm curious as to why. > > On Tue, May 10, 2016 at 13:47 Tyler Cloutier <[email protected]> wrote: >>> On May 10, 2016, at 12:39 AM, Xiaodi Wu via swift-evolution >>> <[email protected]> wrote: >>> >>>> On Tue, May 10, 2016 at 2:27 AM, Nicholas Maccharoli via swift-evolution >>>> <[email protected]> wrote: >>>> Swift Evolution Community, >>>> >>>> Currently writing an infinite loop in swift looks either something like >>>> this: >>>> >>>> while true { >>>> if ... { break } >>>> //... >>>> } >>>> >>>> Or this: >>>> >>>> repeat { >>>> if ... { break } >>>> //... >>>> } while true >>>> >>>> But I think it might be best to change the syntax / behaviour of `repeat` >>>> to loop >>>> indefinitely if no trailing while clause is present: >>>> >>>> repeat { >>>> if ... { break } >>>> //... >>>> } >>>> >>>> while still allowing a trailing `while` clause as in: >>>> >>>> repeat { >>>> foo += bar >>>> } while foo.count < limit >>> >>> What is your motivation for this change? >>> >>>> I also want to propose that it should be a compile time error to use >>>> single `Bool` constants as while loop conditions, so no more `while true { >>>> ... }` it would become `repeat { ... }` >>> >>> What problems are solved by forbidding `while true`? >> >> I don’t think the proposal is forbidding it, but rather making it optional. >> So that >> >> repeat { >> >> } >> >> is equivalent to >> >> repeat { >> >> } while true >> >>> >>>> I was thinking of drafting a short proposal if there was enough positive >>>> feedback. >>>> >>>> How does it sound? >>>> >>>> - Nick >>>> >>>> _______________________________________________ >>>> swift-evolution mailing list >>>> [email protected] >>>> https://lists.swift.org/mailman/listinfo/swift-evolution >>> >>> _______________________________________________ >>> swift-evolution mailing list >>> [email protected] >>> https://lists.swift.org/mailman/listinfo/swift-evolution > _______________________________________________ > swift-evolution mailing list > [email protected] > https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
