[swift-evolution] [swift-evolution-announce] [Review] SE-0099: Restructuring Condition Clauses

Haravikk swift-evolution at haravikk.me
Sun May 29 05:55:42 CDT 2016

> On 28 May 2016, at 23:48, Chris Lattner via swift-evolution <swift-evolution at swift.org> wrote:
>> On May 27, 2016, at 12:11 PM, Joe Groff <jgroff at apple.com <mailto:jgroff at apple.com>> wrote:
>> Hello Swift community,
>> The review of SE-0099 “Restructuring Condition Clauses” begins now and runs through June 3, 2016. The proposal is available here:
>> 	https://github.com/apple/swift-evolution/blob/master/proposals/0099-conditionclauses.md <https://github.com/apple/swift-evolution/blob/master/proposals/0099-conditionclauses.md>
> Thanks everyone.  FYI, Erica and I discussed it offlist and agreed to amend the proposal: now you can use semicolons or a newline to separate clauses of different types.

While I like the improvements made to the proposal, I’m still not in favour of removing the where clause; the introduction of semi-colons and new-lines as separators eliminates the need to use it if you don’t want to, so developers will be free to drop it if they wish, but I don’t see any real reason to remove it from the syntax, as it feels inconsistent if I can use it elsewhere, and I prefer to do so, particularly on if/guard.

I get that there’s some inconsistency between the use of where on while and for loops, but actually the behaviour on while loops can be desirable, and I feel the ambiguity could be addressed in other ways. I feel like removing or changing the where clause should be its own issue, and this one should be focused on removing the ambiguity caused by the use of commas, as anyone that wants semi-colons but also likes to use where is forced to oppose the whole proposal as they’re not mutually exclusive.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160529/5fce532c/attachment.html>

More information about the swift-evolution mailing list