On 7 November 2011 17:34, Allen Wirfs-Brock <al...@wirfs-brock.com> wrote:
>>  It is just another way to
>> silently inject an `undefined' that is tedious to track down.  We
>> already have too many of those...
>
> It is how the language currently behaves in all situations where an object is 
> needed but a primitive values is provided.
> We want consistency in language design, not a hodgepodge of special cases and 
>different rules.

Hm, I don't quite buy that. There are plenty of places in ES today
where we don't convert but throw, e.g. "in", "instanceof", various
methods of Object, etc.  Destructuring arguably is closely related to
operators like "in".  Implicit conversion would violate the principle
of least surprise for either, IMHO.

I agree that consistency is a nice goal, but it seems like that train
is long gone for ES. Also, if consistency implies proliferating an
existing design mistake then I'm not sure it should have the highest
priority.


>> When would this ever be useful behaviour instead of just obfuscating bugs?
>
> let {toFixed, toExponential} = 42;

OK, I guess "useful" is a flexible term. Would you recommend using
that style as a feature?

/Andreas
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to