excluding features from sloppy mode

Brendan Eich brendan at mozilla.com
Thu Dec 27 00:24:24 PST 2012


Kevin Smith wrote:
>
>     It does not even contain the word "strict". IIRC (and I asked
>     about this at the last TC39 meeting and got verbal confirmation),
>     the idea of module {...} implying strict mode was latent, or
>     intended. I'm not sure about out of line modules.
>
>     At this point, best thing is to summon Dave.
>
>
> Since any new code will likely be written as a module (even in the 
> near-term, transpiled back to ES5), this would be the ideal scenario.

Which "this" do you mean? modules (in or out of line) implying strict 
mode can target ES5 strict, no problem.

> But I'm trying to think through the implications while waiting.
>

One more thought from me, then I'll shut up for a bit:

Mark wants no "micro-modes" but really (and I appreciate his candor) 
wants no sloppy mode extension if possible. I see things differently but 
I've started coming down on the side of more implicit strictness: 
module, class, function*, perhaps we should revisit arrows. (Allen has 
to spec something in the way of poisoned or absent .caller, etc. on 
arrow function objects.)

IOW, I want more strict extensions too, but implicitly! Again, having to 
write "use strict"; itself makes for more sloppy code over time, but new 
syntax can be its own reward for the new semantics.

So I'm not convinced your slippery slope argument should prevail.

/be


More information about the es-discuss mailing list