On 17.9.09 12:15 , Jason Orendorff wrote:
The difference shows up in step 7b, whose wording is:
"Reject, if the [[Enumerable]] fields of current and Desc are the Boolean
negation of each other."
Under the first interpretation, if there is no [[Enumerable]] field in Desc,
then never Reject.
Under the second interpretation, if there is no [[Enumerable]] field in
Desc, *and* if current.[[Enumerable]] is true, then Reject.
I think you have the two interpretations reversed here; under the
second interpretation (the one that doesn't seem reasonable to me), if
[[Enumerable]] is missing, we never Reject.
Er, yes, I did.
Past email to this list makes clear the first interpretation was the desired
one.
(assuming you mean the second interpretation)
The one I meant was "the result of any comparison which evaluates desc.[[Something]]
must be false". I'm not going to try to number this, given the mixup in the email.
:-)
Yow. This is very unintuitive. To me, the spec seems to say the
opposite of what's intended here.
I don't disagree!
Perhaps modifying step 7b to explicitly say "Reject, if [[Enumerable]]
is present in Desc and...", is a less arcane approach to fixing this.
(That might not be the only change needed though.)
This isn't what I'd thought we meant, but it seems to be the newly-adopted
change in errata, and indeed I prefer it to the one I thought we meant -- much
more intuitive.
Jeff
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss