On 03/26/2013 08:48 AM, Sam Tobin-Hochstadt wrote:
> While I agree with you on the larger point (and this issue reoccurs
> with proxies), the actual problem here is that [[DefineProperty]]
> should just do nothing on immutable data.  The idea of mutating
> immutable data as long as its the same value is crazy.

ValidateAndApplyPropertyDescriptor in ES6 (and its predecessor in ES5) don't 
mutate if every field in the input descriptor matches the existing fields in 
the existing descriptor.  So a non-writable, non-configurable existing property 
will either throw because !SameValue on the [[Value]] components, or it'll hit 
SameValue(nanValue1, nanValue2) and not change anything, per spec.  Crazy 
implementations that try to optimize here might behave differently, of course, 
but there's no spec issue along these lines.

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

Reply via email to