<div dir="ltr"><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Oct 29, 2013 at 3:03 PM, Brendan Eich <span dir="ltr"><<a href="mailto:brendan@mozilla.com" target="_blank">brendan@mozilla.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class="im">Axel Rauschmayer wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
I would love to have a way to write function calls infix. That may cover your use case as well. That is (strawman syntax):<br>
<br>
    arg1 #func arg2<br>
<br>
would be syntactic sugar for<br>
<br>
   func(arg1, arg2)<br>
<br>
Advantages: more versatile, less grawlixy.<br>
</blockquote>
<br></div>
# is pure grawlix. It's also one of the few ASCII punctuators left, so wanted otherwise.<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Problem: would make much more sense with multiple dispatch (dynamic dispatch over the arguments), but that doesn’t seem to be in the cards for JavaScript.<br>
</blockquote>
<br></div>
The operators stuff I've been developing uses a variant of multimethod dispatch.<br>
<br>
Operators cannot be usable if spelled #add, so we must support all the built-in ones I've talked about (see <a href="http://www.slideshare.net/BrendanEich/js-resp" target="_blank">http://www.slideshare.net/<u></u>BrendanEich/js-resp</a>). Whether we need element-wise operators is really what this thread is about (I think, based on Tristan's spinout). Arbitrary infix named operators IMHO want another thread, and also later. Design means leaving things out (N. Wirth).<span class=""><font color="#888888"><br>

<br></font></span></blockquote><div><br></div><div>Both operators and element-wise operators really benefit from Brendan's multiple dispatch proposal.  Julia has used this approach to great effect.  I'm not opposed to it, but I don't believe there's a compelling need for arbitrary infix operators in the technical computing domain.  The motivation for elementwise operators is to allow for a clean matrix API that would make JS best-of-bread for numerical computing.  A secondary benefit is that it could provide a cow path towards high performance BLAS backed matrix operations making it to the browser sometime far in the future. Any suitably lightweight syntax would work, although +: has some things to recommend it.</div>
<div><br></div><div>Tristan</div></div></div></div>