Реализации ECMAScript 4

    Достоверно известно о работе над исполнением ECMAScript 4 нескольких компаний. Вот список реализаций:

    ECMAScript 4 Reference Implementation (ES4 RI)


    ES4 RI- это справочное исполнение, поддерживаемое технической группой ECMA, как информационная основа для других исполнителей.

    Tamarin


    Tamarin- это объединение усилий компаний Mozilla и Adobe для адаптирования Open Source Adobe Virtual Machine к языку ECMAScript 4 и запуску на следующих за Firefox 3 версия (через ActionMonkey), а также на Flash 10.
    Виртуальная машина Tamarin сама по себе, напряму не поддерживает код ECMAScript. Лучше сказать обслуживающий субпроект компилировать ECMAScript 4 в основной код, который и будет запускаться на Tamarin VM.

    Spidermonkey


    Spidermonkey- это нынешняя реализация JavaScript в Firefox (и в других проектах на базе Mozilla). Он активно обновляется новыми возможностями для соответствия спецификации ES4. Вероятно его заменит ActionMonkey.

    Rhino


    Rhino- Java реалицации JavaScript. Обновляется до уровня ECMAScript 4.

    Futhark (Opera)


    Futhark- это реализация, работающая в Opera 9.5( Kestrel).Также станет частью Opera 10 (Peregrine). Активно обновляется

    Mbedthis


    Mbedthis использует уже несколько лет Javascript как скриптовый язык в их AppWeb- встроенный в веб серверы продукт. А недавно они обновили язык для использовани в мобильных устройсвах и разработали виртуальную машину C и Java для запуска приложений основанных на Javascript в телефонах. Они следят ща ES4 и обновляют свою реализацию по мере заврешнения спецификации, планируют выпустить тестовую версию позже первого квартала, тогда они планируют реализовать все возможности ES4. У них будет двойная лицензия: open source и коммерческая.

    Narcissus


    Очень итересный проект. Это реализация JavaScript, написанная на JavaScript. Сейчас он воспринимает код JavaScript 1.5, работа ведётся на реализацией JavaScript 2. Будет не очень быстрый, но будет работать везде!

    реализованное на по состоянию 7 декабря.


    Google и Apple тоже участвуют в рассылке ECMAScript 4 и работают на своими реализациями спецификации, соответсвенно в Rhino и WebKit.

    Полный список возможностей ES4, работу над которыми ведут компании находиться здесь. Регулярно обновляется

    Тестирование


    Сейчас вы и сами можете опробовать язык, для этого вам понадобиться:
    ECMAScript 4 White Paper — обзор всез возможностей языка с простыми примерами как они должны работать

    Презентация реализации ecma4 в tamarin.
    ejohn.org/files/tamarin-and-ecmascript-4.pdf 235 Кб2

    советы от John Resig

    (ES4 RI)
    Сама реализация

    via John Resig

    Комментарии 8

      0
      а я тоже могу реализовать js на js:
      вот

      /* тру-ля-ля гну гпл */
      /**
      * @param String code to be interpreted
      * @return variant code's returning value
      */
      function __parse_and_exec(code) {
      return eval(code);
      }

      /**
      * @constructor
      */
      function Interpreter() {
      this.version = '0.2';
      }
      /**
      * @param String code to be interpreted
      * @return variant code's returning value
      */
      Interpreter.prototype.interpret = function(code) {
      var ip_code = code;
      var ret_var;
      ret_var = __parse_and_exec(ip_code);
      return ret_var;
      }
      /**
      * @param String code to be interpreted
      * @return variant code's returning value
      */
      Interpreter.prototype.getVersion = function() {
      return this.version;
      }

      // *testing*

      Interpret = new Interpreter();
      Interpret.interpret ('return 666;');
        0
        ой... извините :( не думал что выйдет так длинно и появятся лишние строки
          0
          тавтологический интерпретатор :)
          • НЛО прилетело и опубликовало эту надпись здесь
              0
              ну так добавить немного функциональности осталось ;D
              0
              мазафака)
                0
                шутник :)
                0
                Писать reference implementation(!) на компилируемом языке под три платформы? И не лень им...

                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                Самое читаемое