IMO, if tuples and argument lists are to be distinguished in any way, it is imperative that f3(+) and f4(+), and some of your other examples, _not_ work.<br><br>After all, if a tuple is not an argument list, it should possible to have a function of type ((Int, Int)) -&gt; Int and a function of type (Int, Int) -&gt; Int share the same name (IIUC, it’s a known bug that this does not currently work). Quite simply, there’s a type mismatch if you pass sum1 to f3–what happens if there’s a distinct, overloaded sum1 that takes a single tuple?<br><br>Chris’s suggestion restores a syntactic convenience without touching the type system. What you are arguing for is essentially making ((Int, Int)) -&gt; Int and (Int, Int) -&gt; Int synonymous again, either in some or in all contexts.<br><br><br><div class="gmail_quote"><div dir="ltr">On Wed, Jun 7, 2017 at 05:41 Gwendal Roué 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"><div><blockquote type="cite"><div>Le 7 juin 2017 à 12:33, Gwendal Roué &lt;<a href="mailto:gwendal.roue@gmail.com" target="_blank">gwendal.roue@gmail.com</a>&gt; a écrit :</div><br class="m_1801710330914298896Apple-interchange-newline"><div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>Le 7 juin 2017 à 12:03, Adrian Zubarev via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; a écrit :</div><br class="m_1801710330914298896Apple-interchange-newline"><div><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">Well please no:</p><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
<code style="font-family:Menlo,Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:10pt;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgb(248,248,248);color:inherit;border:1px solid rgb(234,234,234);margin:0px 2px;padding:0px 5px;word-break:normal;word-wrap:normal"><span class="m_1801710330914298896Apple-converted-space"> </span>let fn2: ((Int, Int)) -&gt; Void = { lhs, rhs in }<span class="m_1801710330914298896Apple-converted-space"> </span></code></p><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">Instead use destructuring sugar pitched by Chris Lattner on the other thread:</p><p style="margin:15px 0px;font-family:Helvetica,Arial;font-size:13px;font-style:normal;font-variant-caps:normal;font-weight:normal;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><code style="font-family:Menlo,Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:10pt;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;background-color:rgb(248,248,248);color:inherit;border:1px solid rgb(234,234,234);margin:0px 2px;padding:0px 5px;word-break:normal;word-wrap:normal">let fn2: ((Int, Int)) -&gt; Void = { ((lhs, rhs)) in }</code></p></div></blockquote></div><br><div><div><div><div>Despite Chris Lattern being a semi-god, his double-parenthesis suggestion cruelly lacks in terms of user ergonomics. The compiler should be able to deal with the following code snippet, just like Swift 3 does:</div><div><br></div><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,143,0)"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures">// two arguments</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> f1(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> closure: (</span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) { closure(1, 2) }</span></div></div></div></div></div></div></div></blockquote></div></div><div style="word-wrap:break-word"><div><blockquote type="cite">[...]</blockquote><br></div><div>Here is the full extent of the remarquable Swift 3 ergonomics. This full snippet compiles in Swift 3:</div><div><br></div><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> sum1(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> lhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> rhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures"> { </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">return</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> sum2(lhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, rhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures"> { </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">return</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> sum3(tuple: (</span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">)) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures"> { </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">return</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> sum4(tuple: (lhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, rhs: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">)) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures"> { </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">return</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.lhs + tuple.rhs }</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;min-height:13px"><span style="font-variant-ligatures:no-common-ligatures"></span><br></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,143,0)"><span style="font-variant-ligatures:no-common-ligatures;color:#000000">    </span><span style="font-variant-ligatures:no-common-ligatures">// two arguments</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> f1(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> closure: (</span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) { closure(1, 2) }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f1</span><span style="font-variant-ligatures:no-common-ligatures"> { lhs, rhs </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f1</span><span style="font-variant-ligatures:no-common-ligatures"> { (lhs, rhs) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f1</span><span style="font-variant-ligatures:no-common-ligatures"> { tuple </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f1</span><span style="font-variant-ligatures:no-common-ligatures"> { (tuple) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f1</span><span style="font-variant-ligatures:no-common-ligatures">(+)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f1(sum1)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f1(sum2)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f1(sum3)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f1(sum4)</span></div><p style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;min-height:13px"><span style="font-variant-ligatures:no-common-ligatures">    </span><br class="m_1801710330914298896webkit-block-placeholder"></p><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,143,0)"><span style="font-variant-ligatures:no-common-ligatures;color:#000000">    </span><span style="font-variant-ligatures:no-common-ligatures">// two arguments, with documentation names: identical</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> f2(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> closure: (</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> a: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> b: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) { closure(1, 2) }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f2</span><span style="font-variant-ligatures:no-common-ligatures"> { lhs, rhs </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f2</span><span style="font-variant-ligatures:no-common-ligatures"> { (lhs, rhs) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f2</span><span style="font-variant-ligatures:no-common-ligatures"> { tuple </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f2</span><span style="font-variant-ligatures:no-common-ligatures"> { (tuple) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f2</span><span style="font-variant-ligatures:no-common-ligatures">(+)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f2(sum1)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f2(sum2)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f2(sum3)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f2(sum4)</span></div></div></div><div style="word-wrap:break-word"><div><p style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;min-height:13px"><span style="font-variant-ligatures:no-common-ligatures">    </span><br class="m_1801710330914298896webkit-block-placeholder"></p><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,143,0)"><span style="font-variant-ligatures:no-common-ligatures;color:#000000">    </span><span style="font-variant-ligatures:no-common-ligatures">// one tuple argument</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> f3(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> closure: ((</span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">)) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) { closure((1, 2)) }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f3</span><span style="font-variant-ligatures:no-common-ligatures"> { lhs, rhs </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f3</span><span style="font-variant-ligatures:no-common-ligatures"> { (lhs, rhs) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f3</span><span style="font-variant-ligatures:no-common-ligatures"> { tuple </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f3</span><span style="font-variant-ligatures:no-common-ligatures"> { (tuple) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.0 + tuple.1 }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f3</span><span style="font-variant-ligatures:no-common-ligatures">(+)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f3(sum1)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f3(sum2)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f3(sum3)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f3(sum4)</span></div></div></div><div style="word-wrap:break-word"><div><p style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;min-height:13px"><span style="font-variant-ligatures:no-common-ligatures">    </span><br class="m_1801710330914298896webkit-block-placeholder"></p><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo;color:rgb(0,143,0)"><span style="font-variant-ligatures:no-common-ligatures;color:#000000">    </span><span style="font-variant-ligatures:no-common-ligatures">// one keyed tuple argument</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">func</span><span style="font-variant-ligatures:no-common-ligatures"> f4(</span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">_</span><span style="font-variant-ligatures:no-common-ligatures"> closure: ((a: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">, b: </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">)) -&gt; </span><span style="font-variant-ligatures:no-common-ligatures;color:#3c59a7">Int</span><span style="font-variant-ligatures:no-common-ligatures">) { closure((a: 1, b: 2)) }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f4</span><span style="font-variant-ligatures:no-common-ligatures"> { lhs, rhs </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f4</span><span style="font-variant-ligatures:no-common-ligatures"> { (lhs, rhs) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> lhs + rhs }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f4</span><span style="font-variant-ligatures:no-common-ligatures"> { tuple </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.a + tuple.b }</span></div></div></div><div style="word-wrap:break-word"><div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f4</span><span style="font-variant-ligatures:no-common-ligatures"> { (tuple) </span><span style="font-variant-ligatures:no-common-ligatures;color:#8135a0">in</span><span style="font-variant-ligatures:no-common-ligatures"> tuple.a + tuple.b }</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    </span><span style="font-variant-ligatures:no-common-ligatures;color:#20809f">f4</span><span style="font-variant-ligatures:no-common-ligatures">(+)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f4(sum1)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f4(sum2)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f4(sum3)</span></div><div style="margin:0px;font-size:11px;line-height:normal;font-family:Menlo"><span style="font-variant-ligatures:no-common-ligatures">    f4(sum4)</span></div><div><span style="font-variant-ligatures:no-common-ligatures"><br></span></div></div></div><div style="word-wrap:break-word">Gwendal<div><br></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>