Re: Approach of new Object methods in ES5

2010-04-17 Thread Dmitry Soshnikov
On Fri, Apr 16, 2010 at 8:58 PM, Brendan Eich bren...@mozilla.com wrote: Another Harmony idea: http://wiki.ecmascript.org/doku.php?id=strawman:names for unforgeable property names not equated to any string. These cannot collide, and with sugar to let them be used with . (not only in computed

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread Dmitry A. Soshnikov
Hello David, Saturday, April 17, 2010, 2:01:09 AM, you wrote: var foo = {x: 10, :y: 20} // although... where :y - is your private Name symbol. Choose any: ... and so on, there are many interesting naming conventions (which are not yet borrowed by backward compatibility). Any of

Re: Approach of new Object methods in ES5

2010-04-17 Thread Brendan Eich
On Apr 17, 2010, at 7:25 AM, Dmitry Soshnikov wrote: Excuse me, seems I missed something. I thought first that you mentioned them in private viewpoint, but in this sentence you say that names will help to place standard methods/properties in built- ins prototypes avoiding naming collisions.

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread Brendan Eich
On Apr 17, 2010, at 12:06 AM, David Herman wrote: A Name object that is required to be a leaf in the live object graph has the advantage that it can be strongly referenced by the implementation when used as a property name (key), without reference cycles being possible. Implementations

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread David Herman
But I meant not only naming convention, but that by this naming convention this properties (symbols) will be hidden -- just like in Python, when _ and __ properties become unavailable outside... You still haven't specified what outside means. What does get to see a hidden name and what

Re: Approach of new Object methods in ES5

2010-04-17 Thread Brendan Eich
On Apr 17, 2010, at 11:04 AM, Brendan Eich wrote: On Apr 17, 2010, at 7:25 AM, Dmitry Soshnikov wrote: Excuse me, seems I missed something. I thought first that you mentioned them in private viewpoint, but in this sentence you say that names will help to place standard methods/properties

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread P T Withington
On 2010-04-17, at 00:06, David Herman wrote: PS Still, I have my doubts about using any such mechanisms for versioning. The topic is not versioning in full, rather hiding properties added to built-in prototypes. I had the impression Tucker was thinking about versioning, but I may have

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread David Herman
There are multiple levels of opt-in versioning: (1) versioning of the language itself (2) language support for versioning of libraries I agree with what you're saying wrt (1), but wrt (2), feature detection is feasible, and I'd think more tractable than version detection. Dave On Apr 17,

Re: Approach of new Object methods in ES5

2010-04-17 Thread Asen Bozhilov
Erik Arvidsson wrote: Unfortunately there are use case (although limited) that cannot be solved without a mutable __proto__. Extending built *classes* is one such use case. function HelloElement() { var el = document.createElement('div'); el.__proto__ = HelloElement.prototype; el.text =

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread Peter van der Zee
On Sat, Apr 17, 2010 at 11:40 PM, Brendan Eich bren...@mozilla.com wrote: On Apr 17, 2010, at 3:03 PM, David Herman wrote: There are multiple levels of opt-in versioning: (1) versioning of the language itself (2) language support for versioning of libraries I agree with what you're

Re: Single frame continuations proposal

2010-04-17 Thread Kris Zyp
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 4/14/2010 11:30 AM, David Herman wrote: function foo(...) { f-(...); g-(...); } [snip] Of course, and I certainly understand how continuations reify the frame(s), and how traditional continuations preserve the stack, but I don't follow how

Re: names [Was: Approach of new Object methods in ES5]

2010-04-17 Thread Brendan Eich
On Apr 17, 2010, at 6:07 PM, Peter van der Zee wrote: To be solved: - Allow non-string-property keys - Allow hidden properties, non-enumerable, not generically accessible (like stringed keys are now). To be honest, I'm still not 100% clear on this one. I don't see how these two differ.