Re: array like objects

2009-12-15 Thread Jorge Chamorro
On 15/12/2009, at 13:51, P T Withington wrote: (...) I once had the vain hope that I could say: function MyArray () {} MyArray.prototype = []; to create my own subclasses of Array. That might have lessened the need for isArrayLike. For that, we'd need an Array.create(). It might be

Re: array like objects

2009-12-15 Thread Brendan Eich
On Dec 15, 2009, at 4:51 AM, P T Withington wrote: On 2009-12-08, at 13:10, Mike Samuel wrote: All true. And yet it is not uncommon. See the bottom of this email for a quick survey of a number of libraries' uses of the array-like concept. FWIW, Here is the (separately/simultaneously

Re: array like objects

2009-12-15 Thread Brendan Eich
On Dec 15, 2009, at 5:05 AM, Jorge Chamorro wrote: On 15/12/2009, at 13:51, P T Withington wrote: (...) I once had the vain hope that I could say: function MyArray () {} MyArray.prototype = []; to create my own subclasses of Array. That might have lessened the need for isArrayLike. For

Re: array like objects

2009-12-15 Thread Jorge Chamorro
On 15/12/2009, at 16:21, Brendan Eich wrote: On Dec 15, 2009, at 5:05 AM, Jorge Chamorro wrote: On 15/12/2009, at 13:51, P T Withington wrote: (...) I once had the vain hope that I could say: function MyArray () {} MyArray.prototype = []; to create my own subclasses of Array. That

Re: array like objects

2009-12-15 Thread Brendan Eich
On Dec 15, 2009, at 8:46 AM, Jorge Chamorro wrote: It's the same functionality provided by Object.create(), but for [] instead of {}. Ah, that helps -- thanks. This is not exactly what Tucker showed, though. Tucker is looking for a way to compose custom [[Put]] with prototype-based

Re: quasi-literal strawman

2009-12-15 Thread Brendan Eich
On Dec 14, 2009, at 3:34 PM, Ash Berlin wrote: On 14 Dec 2009, at 22:44, Mike Samuel wrote: It would be convenient for some DSL use cases to allow LineTerminators inside code, but it is unclear how this will interact with revision control systems that rewrite newlines on checkout If

Re: quasi-literal strawman

2009-12-15 Thread Tom Van Cutsem
Hi, Could you motivate why you chose to append the string Quasi to the type tag identifier? I.e.: The QFN of *QuasiTypeTag*http://wiki.ecmascript.org/lib/exe/fetch.php?id=strawman%3Aquasiscache=cachemedia=strawman:quasi-strawman.html#pr-QuasiTypeTag:: *Identifier* is the concatenation of

Re: quasi-literal strawman

2009-12-15 Thread Mike Samuel
2009/12/15 Brendan Eich bren...@mozilla.com: On Dec 14, 2009, at 3:34 PM, Ash Berlin wrote: On 14 Dec 2009, at 22:44, Mike Samuel wrote: It would be convenient for some DSL use cases to allow LineTerminators inside code, but it is unclear how this will interact with revision control systems

Re: quasi-literal strawman

2009-12-15 Thread Mike Samuel
2009/12/15 Tom Van Cutsem to...@google.com: Hi, Could you motivate why you chose to append the string Quasi to the type tag identifier? I.e.: The QFN of QuasiTypeTag :: Identifier is the concatenation of Identifier and the string Quasi. The result is a valid Identifier. I know E employs

Re: array like objects

2009-12-15 Thread David-Sarah Hopwood
Brendan Eich wrote: In ES specs and real implementations, internal methods and various corresponding implementation hooks are called based on [[Class]] of the directly referenced object, in contrast. In ES specs, there's no indication that [[Class]] can or should be used for internal method

Re: array like objects

2009-12-15 Thread Brendan Eich
On Dec 15, 2009, at 11:18 AM, David-Sarah Hopwood wrote: Brendan Eich wrote: In ES specs and real implementations, internal methods and various corresponding implementation hooks are called based on [[Class]] of the directly referenced object, in contrast. In ES specs, there's no

Re: quasi-literal strawman

2009-12-15 Thread David-Sarah Hopwood
Mike Samuel wrote: 2009/12/15 Tom Van Cutsem to...@google.com: Hi, Could you motivate why you chose to append the string Quasi to the type tag identifier? [...] I know E employs a similar mechanism, but I don't know if it's worth having it for Javascript. Essentially, this is a form of

Re: array like objects

2009-12-15 Thread David-Sarah Hopwood
Brendan Eich wrote: On Dec 15, 2009, at 11:18 AM, David-Sarah Hopwood wrote: Brendan Eich wrote: In ES specs and real implementations, internal methods and various corresponding implementation hooks are called based on [[Class]] of the directly referenced object, in contrast. [...] Sorry, I

Re: quasi-literal strawman

2009-12-15 Thread Mark S. Miller
On Tue, Dec 15, 2009 at 12:40 PM, Mike Samuel mikesam...@gmail.com wrote: One possibility is to make the tags uppercase by convention: HTML`...`; XML`...`; SQL`...`; Since language names are very often acronyms, this looks perfectly natural (and I think it looks fine even when