[swift-evolution] [Review] SE-0105: Removing Where Clauses from For-In Loops

Vladimir.S svabox at gmail.com
Thu Jun 23 08:48:10 CDT 2016


> 	* What is your evaluation of the proposal?

-1. 'where' in 'for-in' loop is very handy and clear construction, it is 
similar to well-known 'WHERE' clause in SQL which acts the same way : it 
filters records, not returning just first found record.
'where'/'Where()' in LINQ in C# works the same way(filter),
'where' in Ruby on Rails "result of filtering the current relation 
according to the conditions in the arguments."

> 	* Is the problem being addressed significant enough to warrant a change to Swift?

No. The proposal removes very handy feature without strong reason for this 
and without suggesting good alternative (I think using of guard-continue is 
not a good alternative).

IMO to remove where in 'for-in' loop we need to suggest new construction to 
handy iterate sequences/collections with filtering and probably other handy 
features.
I probably could understand the proposal in case we (and core team) are 
planing such new construction (for example like LINQ in C#) and for this we 
need to remove 'where' in 'for-in'. But for this moment, I don't hear if 
there is such plans and when probably such construction could be 
implemented. (And in any case I don't think 'where' in 'for-in' will be any 
kind of stopper for new construction where 'where' will be also used).


> 	* Does this proposal fit well with the feel and direction of Swift?

I think no. I feel this like step back to C.

> 	* How much effort did you put into your review? A glance, a quick reading, or an in-depth study?

Read all the discussion thread and proposal, participated in discussions.


More information about the swift-evolution mailing list