On 23.12.2010 22:39, Brendan Eich wrote:
On Dec 23, 2010, at 8:36 AM, thaddee yann tyl wrote:I understand that the number sign gets really heavy and annoying after some time. As a result, I suggest a simpler syntax, "private .secret;": a = {}; k = {a: a}; a['k'] = k; function aa(o) { private .a; k..a = o; // or: private c.a; c.a = o; a.a = a.k.a; // or: a['a'] = a['k']['a']; a.a = k..a; // here, on the other hand, k.a is the private stuff. return .a; } let a2 = aa(a); print( a[a2] === a ); // true Would this syntax be less Perlish?The .. is wanted by other extensions, and already used by ECMA-357 (E4X), FWIW. But perhaps your idea of private .x; is good by itself?
I remember the April's discussion of D.Herman's Names, where I assumed several syntax "sugars" (?) for that private symbols -- https://mail.mozilla.org/pipermail/es-discuss/2010-April/010934.html.
P.S.: It's a really lengthy and epic thread. Hope I'll find the time to read it completely. Unfortunately, haven't yet. Will it be a big impudence to ask someone (who has a complete understanding and who has followed the whole discussion and who has a bit time for it of course) to summarize the current state of the discussion (the main points which are already discussed and in which all are agree; in which are not agree)? Because it's really interesting, but the thread is lengthy and still active. I think it will be useful and interesting not only to me, since I saw that some JS devs not completely got the essence of the current private proposals (because though that it will be like in a class-based systems, i.e. not a sugar for a statically-scoped variables which can be used as soft-keys of objects).
Thanks, Dmitry.
ps: my understanding is that, using the current specification, print(a[a2] === a.k.a) from my earlier email yields true, not false, since (a.k.a === a). Am I wrong?Oh, you're right -- I forgot you set k = {a:a} up front. /be _______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

