@ljharb: It seems you now understand what I was trying to say. Sadly, I'm not always the most eloquent.
> As you've all pointed out, it's not "just sugar" in the sense that you couldn't do it in ES5; it's more that parallel syntax and API were created for the new functionality in ES6. The intent of my proposal is to provide both member fields and privilege levels to the `class` keyword, and the equivalent for object literals in a way that meets with both an intuitive declaration style, and a reasonable access notation that breaks as little as few as possible of the developers expectations of what can and can't be done. On Tue, Jul 24, 2018 at 3:18 AM Jordan Harband <[email protected]> wrote: > As you've all pointed out, it's not "just sugar" in the sense that you > couldn't do it in ES5; it's more that parallel syntax and API were created > for the new functionality in ES6. Thanks for providing clear code examples > of how one might extend builtins without `class`. > > @kai: yes, extending builtins makes sense, in that it's an important part > of ES6. Invoking "the web" doesn't negate *any* of the features of the > language, new or old. Separately, not every web use involves any JSON > serialization in either direction. > > On Tue, Jul 24, 2018 at 12:15 AM, T.J. Crowder < > [email protected]> wrote: > >> On Tue, Jul 24, 2018 at 8:00 AM, Michael Theriot >> <[email protected]> wrote: >> > `Reflect.construct` allows subclasses to obtain internal slots without >> > `super()` / class syntax. >> >> Indeed, Darien pointed that out as well (and if you two hadn't, I would >> have. :-) >> >> > This is the first I have heard `class` is anything but sugar. >> >> The accurate statement would be that `class` lets you do things you >> couldn't do in ES5. But so does `Reflect.construct`. I believe it was >> important to the "no `new`" crowd that a non-`class` mechanism existed for >> creating objects using Error and Array as prototypes. >> >> -- T.J. Crowder >> > > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss >
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

