SpiderMonkey

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая InternetArchiveBot (обсуждение | вклад) в 22:37, 5 марта 2021 (Спасено источников — 1, отмечено мёртвыми — 0. Сообщить об ошибке. См. FAQ.) #IABot (v2.0.8). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
SpiderMonkey
Логотип программы SpiderMonkey
Тип Движок JavaScript
Автор Брендан Айк
Разработчики Mozilla Foundation/Mozilla Corporation
Написана на Си/C++
Операционные системы Unix-подобная операционная система и Windows
Аппаратная платформа Кроссплатформенное программное обеспечение
Последняя версия 52[1] (март 2019)
Тестовая версия
Репозиторий hg.mozilla.org/mozilla-c…
Лицензия MPL/GPL/LGPL
Сайт developer.mozilla.org/en…
Логотип Викисклада Медиафайлы на Викискладе

SpiderMonkey — первый в истории движок JavaScript.

История

SpiderMonkey был написан Бренданом Айком во время его работы в Netscape Communications, а позднее сделан открытым. В настоящее время SpiderMonkey поддерживается Mozilla Foundation.

Описание

SpiderMonkey написан на языке Си и включает в себя компилятор, интерпретатор, декомпилятор, сборщик мусора и стандартные классы. Он не предоставляет рабочего окружения, такого как DOM.

SpiderMonkey встраивается в другие приложения, которые предоставляют рабочее окружение для JavaScript. Наиболее популярными программами являются Mozilla Firefox и Mozilla Application Suite/SeaMonkey, а также Adobe Acrobat и Adobe Reader. SpiderMonkey также используется в качестве движка JavaScript для Yahoo! Widgets (ранее известного под именем «Konfabulator») и UOX3, эмулятора Ultima Online.

SpiderMonkey, как и родственный ему движок Rhino, имеет поддержку стандарта ECMAScript для XML (E4X).

ActionMonkey

В 2006 году для Mozilla 2 планировалось использовать Tamarin[3] — открытую виртуальную машину ActionScript, разработанную в Macromedia (позже Adobe).[4]. Проект по интеграции SpiderMonkey и Tamarin получил кодовое название ActionMonkey. Позднее этот проект был отменен в силу ряда причин.[5]

TraceMonkey

В 2009 году к SpiderMonkey добавлена возможность компиляции JavaScript в машинный код, что существенно ускорило выполнение JavaScript-кода. Проект получил название TraceMonkey.

Браузер Firefox, начиная с версии 3.5, для исполнения JavaScript-кода использует по умолчанию TraceMonkey.[6]

JägerMonkey

Для того, чтобы достичь производительности, сравнимой с другими движками, в 2010 году к SpiderMonkey было решено добавить JIT-компиляцию, основанную на компиляции целого метода (англ. method-based JIT)[7]. Проект получил название JaegerMonkey (JägerMonkey).

Браузер Firefox использует JägerMonkey, начиная с версии 4.0.

IonMonkey

Новая версия разрабатывается в Mozilla Foundation.[8]

Браузер Firefox использует IonMonkey начиная с версии 18.0.

OdinMonkey

Несмотря на то, что IonMonkey ещё не до конца реализован, частично внедрён в Nightly 23, Mozilla Foundation приступили к созданию следующей версии - OdinMonkey.[9]

Примечания

Ссылки