Brendan Eich (2013-11-30T11:52:06.000Z)
domenic at domenicdenicola.com (2013-12-10T01:27:25.714Z)
This is no different from ```js function f(x = function(y) { delete y }) { "use strict"; } ``` it seems to me. Really it's yet another parameter defaults vs. strict mode. The primal sin is the directive prologue coming in the body instead of before the parameter list, but that's ES5 strict, and arguably it's better to have a useless expression statement there (no new syntax was the rule), than new syntax or a magic comment or string literal expression statement "decorator" before the function. > It's still doable without an AST walk though, I think. Or a token stream rewind, as Jason pointed out.