arrow functions and dart

Salvador de la Puente González salva at unoyunodiez.com
Tue Sep 23 07:29:41 PDT 2014


Yep. I didn't remember shortcut properties.

Anyway, don't worry about discussions. If it's not interesting, it simply
won't go any further. There is always room for improvements.
 On 23 Sep 2014 13:19, "Caitlin Potter" <caitpotter88 at gmail.com> wrote:

> We already have two (three? not sure about JSC) engines which implement
> arrow functions, plus Traceur. It seems silly to talk about changing the
> syntax at this point when people have shown they’re already happy with the
> arrow.
>
> The suggestions shown here, apart from the last item, look pretty
> ambiguous (and therefore harder to parse). For instance, `x, y : x*y`
> already looks like a shorthand property + a plain data property with a
> value computed when the object is instantiated. ` x, y : { // body }` looks
> like a shorthand property + a data property which happens to be an object
> literal. I guess the #(x, y) could work, but what’s the point of changing
> the syntax around again?
>
> Caitlin Potter
> caitpotter88 at gmail.com
>
> On Sep 23, 2014, at 4:30 AM, Salvador de la Puente González <
> salva at unoyunodiez.com> wrote:
>
> Proposal:
>
> x, y : x*y;
>
> or...
>
> x, y : { //body... }
>
> or the sharp alternative from Brendan [1]
>
> #(x, y) { body... }
>
> I find first option very interesting as it is very tiny for simple lands
> lambdas but allowing bigger bodies and with non ambiguous syntax.
>
> [1] http://brendaneich.com/2011/01/harmony-of-my-dreams/
> On 23 Sep 2014 00:38, "Matthew Robb" <matthewwrobb at gmail.com> wrote:
>
>> I think it's also worth noting that CoffeeScript uses an arrow as well
>> and it doesn't seem to impact usability much if at all.
>>
>>
>> - Matthew Robb
>>
>> On Mon, Sep 22, 2014 at 6:19 PM, Rick Waldron <waldron.rick at gmail.com>
>> wrote:
>>
>>>
>>>
>>> On Mon, Sep 22, 2014 at 5:18 PM, Francisco Ferreira <
>>> francisco.m.s.ferreira at gmail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> Just to set some expectations, Although I follow es-discuss, I read
>>>> more than I discuss. So the point I want to achieve with this e-mail is:
>>>>
>>>> I have played with dart since it was in alpha. And I also have been
>>>> coding with --harmony for a while. I would like to comment that arrow
>>>> functions in dart are much better than in ES6 (mozilla implementation).
>>>>
>>>> Let's compare
>>>>
>>>> In JS:
>>>> anObject.thatGetsACallback( (arg1, arg2) => { .... } );
>>>>
>>>> In dart:
>>>> anObject.thatGetsACallback( (arg1, arg2) { .... } );
>>>>
>>>
>>> Sure, but that syntax cannot be used outside of call expression
>>> arguments. I had a proposal in 2011 (
>>> https://gist.github.com/rwaldron/961495) that fell down on this hazard:
>>>
>>> var x = 1;
>>> f = (x)
>>> { x }
>>>
>>>
>>> ...Which is a valid JavaScript program today, which means that
>>> `(params){ body }` cannot parse unambiguously.
>>>
>>> Rick
>>>
>>>
>>> _______________________________________________
>>> es-discuss mailing list
>>> es-discuss at mozilla.org
>>> https://mail.mozilla.org/listinfo/es-discuss
>>>
>>>
>>
>> _______________________________________________
>> es-discuss mailing list
>> es-discuss at mozilla.org
>> https://mail.mozilla.org/listinfo/es-discuss
>>
>> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140923/f338f379/attachment.html>


More information about the es-discuss mailing list