On May 31, 2012, at 7:23 PM, Mark S. Miller wrote: > On Thu, May 31, 2012 at 5:56 PM, Allen Wirfs-Brock > <al...@wirfs-brock.com> wrote: >> If I understood it, I would probably prefer what you are proposing. >> However, I suspect that many JS programs will conceptually equate "bond >> this" with bound functions and arrow functions and not think about equating >> it with the concept of "has no dynamic this dependencies". > > Then let's not give the predicate a confusing name that suggests a > less useful meaning.
but if the name emphasis something other than what the program conceptualizes, that is also a problem. I guess it comes down to considering actual names. > >> The rules for >> the later not so simple given that they need to include strict mode and eval >> conditionals. > > Non-strict mode is so bizzarre that I wouldn't be surprised, but I > can't think of an example. Is my proposed rule unsound as stated, > since it doesn't distinguish strict and non-strict functions? Is there > some way for a non-strict function that doesn't mention "this" and > does not contain a direct eval operator to nevertheless be > this-sensitive? Actually I was probably thinking about pre-ES5 indirect eval which in, at least some implementation, had access to the local scope. So the mode may not be an issue. In ES6, it could mention "super" so it has to also be included in any analysis. Allen > > -- > Cheers, > --MarkM > _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss