Recently Claus Reinke proposed some alternative that I think feels is so much 
more natural and simpler than <| or beget: 

Instead of this:

foo <| { bar: 'bar' } 

prototype can be a special property:

{ prototype: foo, bar: 'bar' }

simple and easy, of course it can have a different name from `prototype`. Also, 
this special `prototype` property can be non-configurable, non-writable and 
non-enumerable falling back to Object.prototype if not provided. Also 
Object.create(null, { foo: { value: 'foo' } }) will become as simple as { 
prototype: null, foo: 'foo' }.  
Regards
--
Irakli Gozalishvili
Web: http://www.jeditoolkit.com/
Address: 29 Rue Saint-Georges, 75009 Paris, France (http://goo.gl/maps/3CHu)


On Monday, 2011-11-21 at 10:10 , Allen Wirfs-Brock wrote:

> 
> On Nov 19, 2011, at 11:38 AM, Dean Landolt wrote:
> > 
> > 
> > On Sat, Nov 19, 2011 at 1:57 PM, Allen Wirfs-Brock <[email protected] 
> > (mailto:[email protected])> wrote:
> > > 
> > > On Nov 15, 2011, at 10:27 PM, Russell Leggett wrote:
> > > 
> > > >
> > > >
> > > > but given the overall disapproval of the exact syntax of the <| 
> > > > operator, I think its at least a little more obvious what is going on.
> > > >
> > > 
> > > Sorry to be coming late to this thread.
> > > 
> > > I think the above statement is a false characterization to use to start 
> > > this discussion.  There are some who disapprove of <| or other similar 
> > > special character formulation of this operator. There are other who like 
> > > it a lot.  Certainly there isn't "overall" disapproval.  However, we 
> > > can't really even tell whether there is majority (of what population??) 
> > > approval or disapproval.  At best, all you can legitimately say is that 
> > > there is not universal approval of the <| token.
> > 
> > 
> > I was under the impression that TC39 generally operates by consensus. As 
> > you note, there are some who disapprove -- if some is a non-inconsequential 
> > number wouldn't this constitute overall disapproval?
> 
> It's true that there isn't consensus within TC39 on the "<|" syntax.  
> However, there also isn't consensus on any other specific token or keyword 
> either.  At the May TC39 meeting there was consensus on "advancing to 
> proposal status"  the semantic capabilities that were in the enhanced object 
> literal strawman.  At the same time it was noted that there wasn't agreement 
> on syntax. 
> 
> Lack of consensus does not mean "overall disapproval".  It means there isn't 
> overall approval.  Further consensus building is still required it might be 
> around the pending proposal or it might be around something else. 
> 
> However, TC39 wan't even mentioned in the statement I took exception to.  It 
> seemed to make a broader subjective characterization.
> > 
> > FWIW I'm indifferent to the syntax, but it reads just fine to me. Still, 
> > I'm sure there's something better lurking. Especially if it's true that 
> > since it's infix it could be nearly anything. IMHO "begets" is pretty 
> > winful. 
> I find keywords such as "begets" a bit more jarring when used as 
> compositional primitives.  
> 
> To me, "beget" reads fine in isolation such as
>       let bob = tom beget {name:  'Robert');
> 
> But when used in combination you get clashes of the underlying natural 
> language meaning of the keywords.  Compare
>       let Point = class AbstractPoint begets {...
> to
>       let Point = class AbstractPoint <| {...
> 
> The first form just doesn't "read" quite right to me.  For the second form, I 
> don't necessarily internally vocalize a natural language word for <|.
> 
> My personal preference is  for a special characters based operator based 
> token but it doesn't have to be <|.  I've frequently suggested <: as another 
> alternative.  I'm less happy with a keyword operator token but I don't reject 
> that alternative and "beget" may well be the best of those.
> 
> However, we have to decide on something or we just won't have this 
> functionality at all.
> 
> Consensus doesn't mean that everybody likes the solution.  It just means that 
> everybody is willing to accept it. What we really need to do is build such a 
> consensus around one of the alternatives.
> 
> Allen
> 
> _______________________________________________
> es-discuss mailing list
> [email protected] (mailto:[email protected])
> https://mail.mozilla.org/listinfo/es-discuss
> 
> 


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

Reply via email to