Ok, then I'm fine with it. Please note that the current strawman still make use 
of the # symbol, which is why I thought you were using both of them in a future 
proposal. 

Anyway, what do you think of my “–>” proposal for private names? 

I tend to like it, since it solves one of the concern many people made for 
private names (that it introduced a difference between o.prop and o["prop"], 
and that introducing a private name force you to check all your code since all 
property accesses are susceptible to be modified by the insertion of the 
private instruction before them). Using a specific instruction for private 
names solves this problem completely.

It also release a special char (#,@, or whatever char you wanted to use) for 
other uses, since private->name works pretty well and is very consistent with 
obj->property. I'm not sure that @.name is really the way to go for private 
names since we don't have many special chars left and there are good 
alternative ways to solve this problem. Even if we keep the current "." 
approach for private names, we could use "private.name" to get a private name 
handle. 

As I already said, I don't find it natural to define functions by writing an 
arrow *between* the arguments and the method body. Even mathematicians don't do 
this in real life. Everybody use exp(x) = Σ(x^n/n!) and not exp(x) -> Σ(x^n/n!) 
while this is the official notation. Not to say it becomes really strange when 
you don't have arguments at all, like in setInterval(=>this.doAction(), 1000);

If we could use a # or a @ notation for short function notation, I would be 
very pleased, and my developers would be, too. If that was not possible, I 
would not defend this anymore, but I'm under the impression it's still time to 
manage to get this syntax instead of the arrow syntax. I'm really convinced 
that, if given the choice, the majority of JavaScript developers would go for a 
@(x) or #(x) syntax ahead of an arrow syntax notation. But maybe am I wrong.



-----Message d'origine----- 
From: Brendan Eich 
Sent: Wednesday, June 01, 2011 7:42 PM 
To: François REMY 
Cc: Sean Eagan ; es-discuss 
Subject: Re: [Arrow function syntax] Move Arrow to head to 
fixArrowFormalParameters issues 

On Jun 1, 2011, at 10:38 AM, François REMY wrote:

> Last time I asked, it was the "#" char that was wanted for private names. If 
> "#" has been replaced by "@" in private names, then we can replace "@" by "#" 
> in my proposal, and return to the original proposal of #functions.

# is wanted for frozen/joined value types: joined functions with shorter 
syntax, records, tuples.

Hope this helps, it's not fun grabbing the last few easily-typed characters not 
used by JS. Quasis use ` now.

The punctuation soup argument is a bit general and overused against attribute 
modifiers for properties, IMHO, but it is a good countervailing force against 
lame single-character "land grabs" to try to shorten (some) syntax without 
thinking much about usability, semantics, future uses, or connotation in other 
languages.


> If private name uses both @ and #, I raise *severe* concerns about it.

No one ever said any such thing.

/be
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to