<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div></div><div><br></div><div><br>Am 18.05.2016 um 06:52 schrieb Austin Zheng via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt;:<br><br></div><blockquote type="cite"><div><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 17, 2016 at 1:25 PM, Matthew Johnson <span dir="ltr">&lt;<a href="mailto:matthew@anandabits.com" target="_blank">matthew@anandabits.com</a>&gt;</span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><span class=""><blockquote type="cite"><div><div dir="ltr" style="font-family:Helvetica;font-size:12px;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div class="gmail_extra"><div class="gmail_quote"><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="word-wrap:break-word"><div><span><br><blockquote type="cite"><div><div dir="ltr"><div><div><div><br></div><div>Within the angle brackets are zero or more 'clauses'. Clauses are separated by semicolons. (This is so commas can be used in where constraints, below. Better ideas are welcome. Maybe it's not necessary; we can use commas exclusively.)</div></div></div></div></div></blockquote><div><br></div></span><div>I’m not a fan of the semicolon idea.&nbsp; I don’t see any reason for this.&nbsp; The `where` keyword separates the protocol list from the constraints just fine.&nbsp; The list on either side should be able to use commas with no problem (or line breaks if that proposal goes through).</div><span><br></span></div></div></blockquote><div><br></div><div>I'm leaning towards getting rid of the commas, but would like to write out a few 'dummy' examples to see if there are any readability issues that arise.&nbsp;<br></div></div></div></div></div></blockquote><div><br></div></span><div>Replaced with what?&nbsp; Whitespace separation?&nbsp; I suppose that might work for the protocol list but it feels inconsistent with the rest of Swift.&nbsp; Commas plus (hopefully) the alternative of newline seem like the right direction to me.</div></div></div></blockquote><div><br></div><div>Sorry, I completely misspoke (mistyped?). I meant I want to get rid of the semicolons and use commas. I've come to the conclusion that there are no readability issues, protocol&lt;&gt; already uses commas, and semicolons used in this manner don't have a precedent anywhere else in the language.</div></div></div></div></div></blockquote><br><div>Shouldn't there be just a single `where` in the whole `Any&lt;&gt;` clause, separating the constraints on the type itself from the constraints on associated types?</div><div>This would be similar to the current use of the `where` clause in generics.</div><div><br></div><div>Otherwise it at least looks ambiguous whether a comma separates constraints on associated types from each other or from constraints on the type (it might still be unambiguous for the type checker).</div><div><br></div><div>-Thorsten&nbsp;</div></body></html>