Почему 4-й выпуск ECMAScript был полностью фрагментирован?

Я искал некоторую информацию относительно фрагментированного 4-го Выпуска ECMAScript без большого успеха, даже на ТАК. Я знаю, что JavaScript 1.7 Mozilla реализовал многих (все?) новых возможностей, предлагаемых в 4-м Выпуске и я думал, что помнил хорошее сообщение John Resig на нем, но я, может казаться, не нахожу его на его блоге теперь.

В особенно, я хочу знать, почему это было полностью фрагментировано в пользу ECMA-262 5-й Выпуск и почему это не было просто улучшено. Некоторые функции довольно прохладны, как генераторы, итераторы, позволяют, новые операторы присваивания и (мой конкретный фаворит) destructuring присвоение.

Я знаю, что все те конкретные функции просто бросили бы ошибки в браузеры с устаревшими реализациями ECMAScript, но почему бы не включать их так или иначе с knowlege, что однажды те реализации будут немногочисленны? Были ли также другие причины? Мы, вероятно, будем видеть, что некоторые фрагментированные функции вновь появляются в будущем выпуске или поставщики так боимся повреждающейся совместимости, что мы никогда не будем, вероятно, видеть такие улучшения стандарта?

Как в стороне, было бы хорошо знать некоторые мнения о вопросе, Вы раздражаетесь для наблюдения некоторых функций, сокращенных из 5-го Выпуска, или Вы думаете, что это лучше этот путь? Действительно ли это стоит играть вокруг с реализациями ECMAScript 4?

12
задан 2 revs, 2 users 100% 17 August 2010 в 23:28
поделиться

4 ответа

Проще говоря, не было ECMAScript 4th Edition. Из спецификации 5-го издания :

Значительная работа была проделана для разработки четвертого издания ECMAScript. Хотя эта работа не была завершена и не опубликована как четвертое издание ECMAScript, она сообщает о продолжающейся эволюции языка. Настоящее пятое издание ECMAScript (опубликованное как ECMA-262 5-е издание) кодифицирует фактические интерпретации спецификации языка, которые стали обычными для реализаций браузеров, и добавляет поддержку новых функций, появившихся после публикации третьего издания.

По сути, было много очень сильных мнений о том, как продвигать JavaScript вперед, многие из которых были несовместимы, некоторые из которых в основном были собраны в то, что, как некоторые думали, станет 4-м изданием, прежде чем все развалилось (не в последнюю очередь потому, из-за отсутствия поддержки со стороны некоторых важных разработчиков). Между тем, новая редакция стандарта была очень, очень запоздалой, и поэтому после долгих предварительных переговоров различные стороны собрались в Осло в июле 2008 года и согласовали дальнейшие шаги (Брендан Эйх [изобретатель JavaScript] позже назвал этот подход « Гармония » при написании).

Harmony отложил некоторые вещи, убрал некоторые из них навсегда (пространства имен, пакеты, раннее связывание) и, что важно, позволил комитету продвинуться вперед с первым обновлением спецификации с 1999 года: 5-м изданием.

18
ответ дан 2 December 2019 в 05:27
поделиться

Если у вас есть свободные 55 минут на эту тему, см. видео Дуглас Крокфорд: «Состояние и будущее ECMAScript» или стенограмму .

7
ответ дан 2 December 2019 в 05:27
поделиться

По сути, это превращалась в кухонную мойку со слишком большим количеством функций, которые нельзя было реализовать.

2
ответ дан 2 December 2019 в 05:27
поделиться

В интервью Coders At Work было некоторое обсуждение, двое из интервьюируемых были на противоположных сторонах этого вопроса.

Похоже, это привело к фундаментальным разногласиям по поводу того, что должен содержать язык между теми, кто работает над v4, и некоторыми другими уважаемыми членами сообщества.

(кстати, я настоятельно рекомендую эту книгу)

1
ответ дан 2 December 2019 в 05:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: