I&#39;ve read the pitch, but it isn&#39;t clear what the ask is or what benefit it would give.<br><div class="gmail_quote"><div dir="ltr">On Wed, Feb 22, 2017 at 8:05 AM Haravikk 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" class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><blockquote type="cite" class="gmail_msg"><div class="gmail_msg">On 22 Feb 2017, at 11:48, Brent Royal-Gordon &lt;<a href="mailto:brent@architechies.com" class="gmail_msg" target="_blank">brent@architechies.com</a>&gt; wrote:</div><br class="m_-454793796281551361Apple-interchange-newline gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><blockquote type="cite" class="gmail_msg">On Feb 22, 2017, at 3:32 AM, Haravikk via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br class="gmail_msg"><br class="gmail_msg"><span class="m_-454793796281551361Apple-tab-span gmail_msg" style="white-space:pre-wrap">        </span>foo.example(foo) // What did I mean here?<br class="gmail_msg"><span class="m_-454793796281551361Apple-tab-span gmail_msg" style="white-space:pre-wrap">        </span>let result = foo.example(foo:) // This looks like I might be trying to select a function, rather than call it<br class="gmail_msg"></blockquote><br class="gmail_msg">I think it would be really weird to support not one, but *two* potentially ambiguous sugar forms.<br class="gmail_msg"></div></div></blockquote></div><br class="gmail_msg"></div><div style="word-wrap:break-word" class="gmail_msg"><div class="gmail_msg">Those aren&#39;t examples I think should be supported, I was thinking out loud. The point I was trying to make is that it&#39;s not the trailing nature that&#39;s a requirement, but that the real requirement for this feature to work is that there&#39;s at least one other, non-Void argument.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">On another note, one other alternative I did think of for declaration is that perhaps it might be better still to use an attribute to specify a label-only &quot;argument&quot;. Think of it like an attribute on the type, except that it specifies that there is no type:</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><font face="Monaco" class="gmail_msg"><span class="m_-454793796281551361Apple-tab-span gmail_msg" style="white-space:pre-wrap">        </span>func adding(_ other:Self, reportingOverflow:@labelonly) { … }</font></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">The attribute makes it absolutely clear that this is just a label and not an actual, functional argument (there won&#39;t be a reportingOverflow local variable), and that it can be passed without a value when calling this method. It&#39;ll still need the trailing colon for possible disambiguation of variables though.</div></div>_______________________________________________<br class="gmail_msg">
swift-evolution mailing list<br class="gmail_msg">
<a href="mailto:swift-evolution@swift.org" class="gmail_msg" target="_blank">swift-evolution@swift.org</a><br class="gmail_msg">
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br class="gmail_msg">
</blockquote></div>