On Feb 14, 2014, at 11:38 AM, Jeremy Martin wrote: > On further reflection, #3 does feel like trying to rewrite the past. For > better or worse, non-strict mode allows declarations to persist past the > eval(). And while strict mode provides a license-to-kill on behavior like > that, I don't really see strong justification for that kind of surprise > factor for let in non-strict mode. > > If you're not using strict mode AND you're using eval(), the damage is > arguably already done (or at least the danger already exists). Changing the > behavior of let in this case feels like removing an arbitrary* foot-gun when > we're already in the armory, so to speak. > > * Granted it's not completely arbitrary, since `let` is new whereas `var` is > not, but hopefully you get my point.
Another consideration in the back of my mind is that there may be useful to implementors to knowing that let/const/class declaration are never dynamically added to a non-global environment. Allen _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss