Not everything. But it's much easier to add than remove a feature, and
here's a couple of the driving issues that make it harder for browsers to
remove these features (browsers remove them before TC39 can):

- `with` is frequently used in templating libraries that use code gen and
allow JS interpolation. There is no real alternative besides parsing each
JS expression/statement part, and that's pretty costly up front in code
size.
- `RegExp.$1` and friends are incredibly convenient, and are used to avoid
having to reference the regexp or `exec` result directly.
- `this` in sloppy mode calls is frequently used to get the global object.
Until a `global`, `System.global`, or some other proposal gets through,
there is no other reliable, platform-agnostic option to get the global
object.

It would be helpful if the committee decided to recommend browsers to emit
console warnings for deprecated features (where practical) instead of just
telling people to not use deprecated features. That would at least
encourage people to act instead of doing nothing.

On Mon, Jul 24, 2017, 12:32 Florian Bösch <[email protected]> wrote:

> On Sun, Jul 23, 2017 at 6:49 AM, Jordan Harband <[email protected]> wrote:
>
>> There's lots of other threads on why no new modes are likely to ever be
>> introduced.
>>
>
> And here we see the language evolution committee in its natural habitat
> setting itself the impossible goal to support everything every introduced,
> still introduce new things, and do it all without versioning, forever. In a
> thousand or a million or a billion years, JS will still be JS as it was set
> into stone in the late 20th century.
> _______________________________________________
> 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

Reply via email to