<div dir="ltr">In Scala, the ambiguity of the underscore causes lots of confusion when you have nested functions - how is that handled in your proposal?<div><br></div><div>Bear in mind, I think it's a tough argument that `@ + 1` is so much better than `n => n + 1` that it warrants its own syntax.<br><div><br></div><div>Separately, the "@" is reserved for an existing proposal, so you'd have to come up with different syntax anyways.</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 23, 2016 at 10:38 AM, Kenneth Powers <span dir="ltr"><<a href="mailto:ken@kenpowers.net" target="_blank">ken@kenpowers.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>I have a proposal for new syntax in ES inspired by the placeholder syntax in <a href="http://docs.scala-lang.org/overviews/quasiquotes/expression-details.html#function" target="_blank">Scala Functions</a>.</div><div><br></div><div>Essentially, the idea would be to allow anonymous arguments. The most simple example would be a function which takes one argument (as far as the programmer is concerned):</div><div><br></div><div>    [1, 2, 3].map(@ + 1)</div><div><br></div><div>This would be the same thing as:</div><div><br></div><div>    [1, 2, 3].map(n => n + 1)</div><div><br></div><div>Just like in Scala, an anonymous function is created. This concept can be further extended in ES:</div><div><br></div><div>    [1, 2, 3].reduce(@0 + @1, 0)</div><div><br></div><div>Which would be the same thing as:</div><div><br></div><div>   [1, 2, 3].reduce((sum, n) => sum + n, 0)</div><div><br></div><div>Thoughts?</div></div>
<br>______________________________<wbr>_________________<br>
es-discuss mailing list<br>
<a href="mailto:es-discuss@mozilla.org">es-discuss@mozilla.org</a><br>
<a href="https://mail.mozilla.org/listinfo/es-discuss" rel="noreferrer" target="_blank">https://mail.mozilla.org/<wbr>listinfo/es-discuss</a><br>
<br></blockquote></div><br></div>