W3C home > Mailing lists > Public > public-script-coord@w3.org > July to September 2011

Re: Strict mode callbacks and setTimeout

From: Cameron McCormack <cam@mcc.id.au>
Date: Thu, 7 Jul 2011 12:14:44 +1200
To: Allen Wirfs-Brock <allen@wirfs-brock.com>
Cc: "Mark S. Miller" <erights@google.com>, Boris Zbarsky <bzbarsky@mit.edu>, Luke Hoban <lukeh@microsoft.com>, "es5-discuss@mozilla.org" <es5-discuss@mozilla.org>, public-script-coord@w3.org
Message-ID: <20110707001444.GD21787@wok.mcc.id.au>
Allen Wirfs-Brock:
> Did you mean:
> (function() {"use strict"; return this}).call(undefined)

Yeah, I guess I did, thanks.  (I looked quickly at the description of
Function.prototype.call and figured that the this value given to
[[Call]] was used unconditionally as the value of `this`, but of course
the “Entering Function Code” section of the spec does do the strict mode
check.  I think I assumed `func.call(undefined)` would be different from
`func()` even in non-strict mode.)

I also just realised that the checking of the this value that Boris
quoted will need to be tweaked so that static operations don’t throw.

Doesn’t setTimeout need to know which window object it is called on, so
that the right task queue is used?  (I guess that could be encoded into
the Window.prototype.setTimeout Function object, since there’ll only be
one window object per setTimeout Function anyway.)

-- 
Cameron McCormack ≝ http://mcc.id.au/
Received on Thursday, 7 July 2011 00:15:40 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 May 2013 19:30:04 UTC