@getify @BrendanEich I'm sorry to say, but you may have the Curse of Knowledge.
@getify @AdamRackis @BrendanEich you are making an empirical claim: ES5 constructors very rarely throw when [[Call]]ed. Self evidently false
-
-
@getify@AdamRackis@BrendanEich http://this.foo = bar or http://this.foo in an ES5 strict constructor will throw 100%. -
@getify@AdamRackis@BrendanEich in a sloppy constructor http://this.foo = bar erroneously adds to the global object. -
@getify@AdamRackis@BrendanEich code that relied on blindly calling a constructor and it never throwing is broken in ES5, full stop -
@wycats@adamrackis@brendaneich nonsense. absolutes like that get us nowhere. -
@wycats@adamrackis@brendaneich you'll notice my example code didn't rely on that. it used .call to provide a substitute context. -
@getify@AdamRackis@BrendanEich your notion of compatibility does not match mine. Let's agree to disagree. -
@wycats on a related note, I've been exploring your decorators more than a little - really well done.https://www.npmjs.com/package/easy-express-controllers …
End of conversation
New conversation -
-
-
@wycats@adamrackis@brendaneich i'm making a claim: vast majority of ES5 constructors i've seen either had no guard, or the re-new guard. -
@wycats@adamrackis@brendaneich and that virtually none of them had explicit `throw`. yes i'm well aware of strict-mode undefined `this`. -
@getify@AdamRackis@BrendanEich the lack of explicit throw matters... why? -
@wycats@adamrackis@brendaneich it matters b/c ES6 class constructor now has explicit throw if you use .call… as my gist showed.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.