<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 12 Mar 2017, at 04:33, Ricardo Parada via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="content-type" content="text/html; charset=utf-8" class=""><div dir="auto" class=""><div class=""><span class=""></span></div><div class=""><div class="">I read Haravikk's proposal a second time. I think I see the advantage of being able to use it with other types besides array. </div><div class=""><br class=""></div><div class="">I also found disambiguating with the trailing comma to be intuitive. On the other hand I did not find it so intuitive to use @variadic and @nonVariadic to disambiguate. I would say just pick the trailing comma. </div></div></div></div></blockquote></div><br class=""><div class="">As written you'd be able to do both, it's just down to personal preference which. However, while the comma works fine for enforcing a variadic call, there does still need to be a way to tell Swift you want to call with an array, which is what the nonVariadic attribute/compiler directive is for; fortunately this is a case that only comes up when the function accepts elements of type Any, so there's ambiguity as to whether you're passing an array of elements, or an element that happens to be an array.</div><div class=""><br class=""></div><div class="">There are some other features being discussed where it might make sense to have an expansion operator, and some have proposed using the trailing ellipsis for this, so we could end up with something like:</div><div class=""><br class=""></div><div class=""><font face="Monaco" class=""><span class="Apple-tab-span" style="white-space:pre">        </span>let bar = myFunc(foo...) // call as an array</font></div><div class=""><font face="Monaco" class=""><span class="Apple-tab-span" style="white-space:pre">        </span>let baz = myFunc(foo,) // call variadically</font></div><div class=""><br class=""></div><div class="">But I'm just not sure if it's worth doing only for the single proposal or not? I suppose I could mention it in alternatives though!</div></body></html>