Question about joined function object of ECMA-262 3rd edition
hax.sfo at gmail.com
Fri Jul 27 02:56:31 PDT 2007
On 7/27/07, liorean <liorean at gmail.com> wrote:
> x()===y() may return false the same way x()===x() may return false.
> doesn't necessarily give the same output in cosecutive uses of the
No, I don't mean side effect, and there is no side effect in this
case. The result may be not equal just because they have diff
> Functions with different scope may be joined, but only if the scope
> difference will lead to no externally observable difference.
Could you point out in where the spec defines such condition?
The spec only says: ...an implementation may detect when the
differences in the [[Scope]] properties of two or more joined Function
objects are not externally observable and in those cases reuse the
same Function object rather than making a set of joined Function
My impression of it is: if the differences in the [[Scope]] are
externally observable, then the implementation can't reuse the same
object, but can make a set of joined Function objects.
More information about the Es4-discuss