> On Jun 10, 2016, at 8:02 AM, Xiaodi Wu via swift-evolution 
> <[email protected]> wrote:
> 
> On Fri, Jun 10, 2016 at 7:18 AM, Haravikk <[email protected] 
> <mailto:[email protected]>> wrote:
>> * The word "where" does not consistently imply `break` or `continue`. In 
>> current Swift, `where` implies `break` in the context of a `while` loop and 
>> `continue` in the context of a `for` loop. Some users intuitively guess the 
>> correct meaning in each context, while others guess the wrong meaning. 
>> Therefore, the only way to learn for sure what `where` means in any context 
>> is to read the rulebook. That, by definition, means that this is unintuitive.
> 
> This is an argument for renaming the where keyword on for loops to be more 
> clear, or to somehow integrate continue/break to be more explicit about what 
> the developer intends for it to do.
> 
> Sure: I conclude that the keyword should be *either* removed *or* reformed; 
> both outcomes could address the issue.

This is my stance as well and I reserve the right to flit between both choices 
until we've fully talked it through.

One more data point. 

In the standard library there are just under 950 uses of "for in loops". There 
are 3 uses of "for in while" :

private/StdlibUnittest/StdlibUnittest.swift.gyb:    for j in instances.indices 
where i != j {
public/core/Algorithm.swift:  for value in rest where value < minValue {
public/core/Algorithm.swift:  for value in rest where value >= maxValue {

-- Erica

_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to