On Oct 30, 2011, at 6:19 PM, Axel Rauschmayer wrote:
>>> let obj = base beget {a: 1, b: 2}
>>> let arr = base beget [p, q, r]
>>> let fun = base beget function (...args) { ... }
>>> let re = base beget /(\w+)\s+(\w)+/g
>>>
>>> It's still idiomatic as a name for differential inheritance, but it is more
>>> pithy than 'make' or 'create' (and one character shorter than 'create' --
>>> no Unix 'creat' reruns! ;-). Comments?
>>
>> Of the various keywords that I been suggested for this operator, I think I
>> like it the best. It is probably good that it is fairly unique and
>> idiomatic.
>>>
>>> Saying or writing "triangle" does not convey meaning, and it's confusing in
>>> geometry/graphics contexts.
>>
>> yes, my original suggest is that <| should be produced "prototype for"
>
> One last idea, then I’ll stop my bikeshedding:
>
> I think it helps if it reads well. For example:
>
> const Employee = Person refinedBy { ... }
> const Employee = Person subsuming { ... }
> const Employee = Person parenting { ... }
> const Employee = Person above { ... }
> const Employee = Person before { ... }
Sorry, these are ghastly (it's almost Halloween, but c'mon).
I searched a bit and re-read Smalltalk, Self, Cecil, and Io docs to get a
handle on what <| does. It is not 'clone'. It ain't 'create' except in a
vacuous sense that's also already "taken" by ES5 Object.create. It isn't
"subsuming" in my view. "refinedBy" is closer but you'll get camelCaps keywords
into JS over my dead body!
I landed on 'beget' because 'create' is close but vague yet poisoned, and we
need something pithy. Doug already employed it ages ago. Is there a reason you
don't like 'beget'?
/be
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss