Список движков ECMAScript - List of ECMAScript engines
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
An Механизм ECMAScript это программа, которая выполняет исходный код, написанный в версии ECMAScript языковой стандарт, например, JavaScript.
Это движки ECMAScript нового поколения для веб-браузеров, все реализующие своевременная компиляция (JIT) или варианты этой идеи. Преимущества производительности для своевременной компиляции делают его более подходящим для веб-приложений, написанных на JavaScript.
- Carakan: Движок JavaScript, разработанный Программное обеспечение Opera ASA,[1] включены в 10.50[2] выпуск Опера веб-браузер, пока не переключится на V8 с Opera 15 (выпущена в 2013 году).[3][4]
- Чакра (JScript9): А JScript двигатель, используемый в Internet Explorer. Впервые он был показан на СМЕСЬ 10 как часть предварительной версии платформы Internet Explorer 9.[5]
- Чакра: А JavaScript двигатель, используемый в Microsoft Edge.[6]
- ПаукОбезьяна: Движок JavaScript в Mozilla Геккон приложения, в том числе Fire Fox. В настоящее время движок включает в себя компилятор IonMonkey и модуль оптимизации OdinMonkey, ранее включал компилятор TraceMonkey (первый javascript JIT) и JägerMonkey.
- JavaScriptCore: Интерпретатор JavaScript и JIT, изначально производный от KJS. Он используется в WebKit проект и приложения, такие как Сафари. Также известен как Nitro, SquirrelFish и SquirrelFish Extreme.[7]
- JScript .NET: А .NET Framework JScript двигатель, используемый в ASP.NET на основе общеязыковая среда выполнения и COM-взаимодействие. К сожалению, поддержка была прекращена с .NET Core и CoreCLR так что его будущее выглядит сомнительным для ASP.NET Core.
- Тамарин: An ActionScript и движок ECMAScript, используемый в Adobe Flash.
- V8: Движок JavaScript, используемый в Гугл Хром, Node.js, Дено и V8.NET.
- Nashorn: Движок JavaScript, используемый в Oracle Комплект для разработки Java (JDK) начиная с версии 8.[8]
- iv, ECMAScript Lexer / Parser / Interpreter / VM / method JIT, написанный на C ++[9]
- CL-JavaScript: может компилировать JavaScript на машинный язык в реализациях Common Lisp, которые компилируются на машинный язык.[10]
- BESEN: полная реализация JIT-компиляции пятого издания ECMAScript, написанная на Object Pascal.[11]
Следующие механизмы используют интерпретаторы времени выполнения, которые не компилируются в машинный код и обычно работают медленнее:
- Континуум:[12] А переводчик-самоучитель который поддерживает более старые проекты спецификации ECMAScript 2015.[13] Уникально то, что движок реализован в ECMAScript 3, что позволило запускать ES2015 в браузерах столь же старых, как IE6.[14]
- Футарк: Механизм ECMAScript Опера версии веб-браузера с 9.50 по 10.10.
- InScript: Устаревший проприетарный библиотека, используемая для iCab 2 и 3.
- JScript: Двигатель, который используется в Internet Explorer для версий до IE9 и один компонент Трезубец механизм компоновки.
- KJS: Двигатель, используемый в Konqueror, и один компонент KHTML, предшественник JavaScriptCore.
- Линейное письмо B: Механизм ECMAScript Опера только версии веб-браузера с 7.0 по 9.50.
- Нарцисс: JavaScript реализован в JavaScript (a мета-круговой оценщик ), предназначенный для работы в другом движке JavaScript, только теоретического и образовательного характера.
- JS-Interpreter Легкий интерпретатор JavaScript, реализованный на JavaScript с пошаговым выполнением.
- QtScript: Первоначально разработан Trolltech, теперь принадлежит Компания Qt. Он обеспечивает интеграцию QObject с JavaScriptCore.
- V4 (QJSEngine): новый движок ECMAScript от Qt, поддерживающий QML и QtQuick. Совместимость с ES6 и активная разработка на Компания Qt.
- Носорог: Один из нескольких движков JavaScript от Mozilla, с использованием Платформа Java.
- YAJI: движок ECMAScript[15] на основе FESI[16] реализация Жан-Марком Люгреном в 1999 году с использованием Платформа Java, в настоящее время разрабатывается для поддержки последних стандартов (ECMAScript spec. 262, v5.1).[17]
- Дуктапе: Компактный, легко встраиваемый движок Ecmascript E5 / E5.1.[18]
- XS JavaScript Engine: совместимый с ECMAScript 2020[19] движок для микроконтроллеров с ограниченными ресурсами.[20] XS поддерживается Moddable как часть Moddable SDK и ранее был частью Платформа Kinoma.[21]
- Jsish: Интерпретатор подмножества ES5.1 со встроенной поддержкой SQLite, JSON, WebSocket и ZVFS.[22]
- Websocket.js: встраиваемый движок Javascript с поддержкой HTTP / Websocket.[23]
- Эспруино: Очень компактный интерпретатор специально для микроконтроллеры. Может работать менее чем в 8 КБ ОЗУ при выполнении из источника (а не байт-код ).
- MuJS: легкая библиотека интерпретатора ECMAScript, предназначенная для встраивания в другое программное обеспечение с целью расширения их возможностей создания сценариев. Первоначально разработан для MuPDF.[24]
- mJS: движок JavaScript с ограничениями. Используется для Интернета вещей (IoT).
- Tiny-JS: минимальный интерпретатор JavaScript, написанный на C ++.
- JerryScript: легкий движок JavaScript от Samsung для микроконтроллеров с ОЗУ менее 64 КБ.
- Привязки Gjs Javascript для Gnome
- GNU Guile имеет интерпретатор ECMAScript с версии 1.9
- njs: легкий интерпретатор JavaScript, оптимизированный для сценариев веб-сервера и создания самого быстрого контекста виртуальных машин; используется в nginx.[25]
- QuickJS: Легкий интерпретатор ECMAScript 6 от Фабрис Беллар и Чарли Гордон.
- engine262: движок JavaScript, написанный на JavaScript для разработки и исследования. Он в основном используется для проверки спецификации ECMAScript.
- graaljs: совместимый с ECMAScript движок JavaScript для GraalVM, который поддерживает языковую совместимость, которая также может выполнять приложения Node.js.
Смотрите также
- Сравнение движков ECMAScript
- Движок JavaScript
- Сравнение программного обеспечения для виртуализации приложений
Рекомендации
- ^ «Архивная копия». Архивировано из оригинал на 2009-05-31. Получено 2009-07-09.CS1 maint: заархивированная копия как заголовок (связь)
- ^ https://web.archive.org/web/20060303160759/http://my.opera.com/desktopteam/blog/
- ^ http://my.opera.com/ODIN/blog/300-million-users-and-move-to-webkit
- ^ http://my.opera.com/ODIN/blog/opera-14-for-android-is-out
- ^ Часто задаваемые вопросы, Microsoft, 2010-03-13, архивировано из оригинал на 2010-03-22, получено 2010-03-18
- ^ «Таргетинг на Edge vs. унаследованные движки в API JsRT». Получено 10 сентября 2015.
- ^ http://trac.webkit.org/wiki/JavaScriptCore
- ^ http://www.oracle.com/technetwork/articles/java/jf14-nashorn-2126515.html
- ^ "Созвездие / iv". Получено 2015-11-15.
- ^ «CL-JavaScript». Получено 2018-09-14.
- ^ https://github.com/BeRo1985/besen
- ^ «Виртуальная машина ES6, построенная на JavaScript». Архивировано из оригинал на 2012-12-03. Получено 2012-12-01.
- ^ http://www.ecma-international.org/ecma-262/6.0/
- ^ «Continuum - виртуальная машина JavaScript, построенная на JavaScript». Github. Получено 2012-12-01.
- ^ «YAJI: еще один интерпретатор JavaScript». Код Google. Google. Получено 2012-01-31.
- ^ «ФЭСИ». Сентябрь 2003 г. Архивировано с оригинал на 2012-09-06. Получено 2012-08-06.
- ^ «Спецификация языка ECMAScript, версия ECMA-262 5.1» (PDF). Ecma International. Июнь 2011. Архивировано с оригинал (PDF) на 2015-04-12. Получено 2012-01-31.
- ^ "Дуктапе". Получено 2013-09-21.
- ^ https://github.com/Moddable-OpenSource/moddable/blob/public/documentation/xs/XS%20Conformance.md#results
- ^ https://www.moddable.com/faq.php#what-is-xs
- ^ https://www.moddable.com/XS7-TC-39
- ^ "Йсиш". Получено 2014-04-30.
- ^ "Websocket.js". Получено 2014-07-16.
- ^ «MuJS». Получено 2014-09-22.
- ^ «NGINX JavaScript в конфигурации вашего веб-сервера». Получено 2018-10-30.