<div dir="ltr">I think the where clause should be moved to the end as you outlined an any constraints beyond simple statements of conformance to a protocol or superclass should only be allowed in the where clause. If someone desires to state simple conformance/superclass for a generic parameter they should be allowed to do so in either location.</div><br><div class="gmail_quote"><div dir="ltr">On Wed, Apr 6, 2016 at 1:21 PM Pyry Jahkola via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><blockquote type="cite">Joe Groff wrote:<br></blockquote><div><blockquote type="cite"><br><div><span style="font-family:Menlo-Regular;font-size:11px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;float:none;display:inline!important">It&#39;s a judgment call. It&#39;s my feeling that in many cases, a generic parameter is constrained by at least one important protocol or base class that&#39;s worth calling out up front, so it&#39;s reasonable to allow things like &#39;func foo&lt;C: Collection&gt;(x: C) -&gt; C.Element&#39; without banishing the &#39;Collection&#39; constraint too far from the front of the declaration.</span><br style="font-family:Menlo-Regular;font-size:11px;font-style:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"></div></blockquote></div><br></div><div style="word-wrap:break-word"><div>Fair enough. I think it would be clearer if all the constraints appeared in one standard place (in the `where` clause).</div></div><div style="word-wrap:break-word"><div><br></div><div>— Pyry</div></div>_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div>