<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
The proposal is indeed really interesting.
<div class="">I would love to see if it could get a second round of discussion.<br class="">
<div class=""><br class="">
</div>
<div class="">However, I failed to understand the syntax of the proposed extension. Where would be defined the label and parameter names? Is this just a typo?</div>
<div class=""><br class="">
</div>
<div class="">
<pre style="box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.600000381469727px; margin-top: 0px; margin-bottom: 16px; line-height: 1.45; word-wrap: normal; padding: 16px; overflow: auto; background-color: rgb(247, 247, 247); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; color: rgb(51, 51, 51);" class=""><code style="box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; padding: 0px; margin: 0px; background-color: transparent; border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; word-break: normal; border: 0px; display: inline; overflow: visible; line-height: inherit; word-wrap: normal;" class="">func someFunc&lt;I:IteratorProtocol where I.Element == Int)</code></pre>
<div class="">Thanks,</div>
</div>
<div class=""><br class="">
</div>
<div class="">Dimitri</div>
<div class=""><br class="">
<br class="">
<div>
<blockquote type="cite" class="">
<div class="">On 11 Feb 2017, at 13:08, Tino Heth &lt;<a href="mailto:2th@gmx.de" class="">2th@gmx.de</a>&gt; wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div class=""><br class="">
<blockquote type="cite" class="">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div class=""><font face="Consolas" class="">func f(_ args: [Int]) {</font></div>
<div class=""><font face="Consolas" class="">&nbsp; // Some implementation ...</font></div>
<div class=""><font face="Consolas" class="">}</font></div>
<div class=""><font face="Consolas" class=""><br class="">
</font></div>
<div class=""><font face="Consolas" class="">func f(_ args: Int…) {</font></div>
<div class=""><font face="Consolas" class="">&nbsp; f(args)</font></div>
<div class=""><font face="Consolas" class="">}</font></div>
<div class=""><br class="">
</div>
<div class="">Some people also advocate (myself generally included) that one should prefer the signature explicitly marking&nbsp;<font face="Consolas" class="">args</font>&nbsp;as an array, as the syntactic overhead of wrapping the arguments with “<font face="Consolas" class="">[]</font>”
 when calling&nbsp;<font face="Consolas" class="">f</font>&nbsp;is arguably bearable. However, in some other situations, this approach might not be applicable. For instance, one may simply not be able to modify the original function. Another use-case may be a function
 that should forward its own variadic parameters.</div>
</div>
</div>
</blockquote>
</div>
<div class=""><br class="">
</div>
There has been a proposal that would not only solve this issue, but also add a lot flexibility while simplifying the language at the same time:
<div class=""><a href="https://github.com/Haravikk/swift-evolution/blob/a13dc03d6a8c76b25a30710d70cbadc1eb31b3cd/proposals/nnnn-variadics-as-attribute.md" class="">https://github.com/Haravikk/swift-evolution/blob/a13dc03d6a8c76b25a30710d70cbadc1eb31b3cd/proposals/nnnn-variadics-as-attribute.md</a></div>
<div class=""><br class="">
</div>
<div class="">Imho it's one of the best ideas I have seen on evolution, and definitely the most valuable segregation of C legacy.</div>
<div class="">Sadly, it was discussed in a very busy timeframe, and I think it really didn't receive the attention it deserves…</div>
<div class=""><br class="">
</div>
<div class="">I would have asked Haravikk wether he would like to start a second try anyways, and as this topic is directly related, it's a good motivation to do so.</div>
<div class=""><br class="">
</div>
<div class="">The basic idea of the proposal is to get rid of &quot;…&quot;-magic and declare variadic parameters with their natural type (Array&lt;T&gt; — but one aspect of this idea is that it can be extended easily to work with sets and other types that can be expressed
 with an array literal).</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</body>
</html>