[swift-evolution] [Pitch] Retiring `where` from for-in loops

Brent Royal-Gordon brent at architechies.com
Fri Jun 10 12:51:57 CDT 2016


> The thought here is along the lines of what Chris said, quoted above, and repeated here: "The extended C family of language [...] is an extremely popular and widely used set[;] programmers move around and work in different languages, and [aligning to expectations arising from other C family languages] allows a non-expert in the language to understand what is going on." By contrast, the `where` clause violates that expectation and I do not see "overwhelmingly large advantages" for doing so.

I think you might be slightly misunderstanding Chris's point here. In the thread you quoted, somebody suggested fundamentally changing the very structure of the syntax—the way blocks are marked out—to something completely different from C. Chris said that such a huge deviation from the C family would need "overwhelmingly large advantages" before they would accept it.

This is not the same situation. It is true that there's no similar feature in C—mainly because C's loose typing allows you to use && instead—but the `where` clause is a mere augmentation of C practice, not a complete break from it. It does not need to pass nearly so stringent a test.

-- 
Brent Royal-Gordon
Architechies



More information about the swift-evolution mailing list