SpiderMonkey
SpiderMonkey — вбудований JavaScript-рушій з відкритим сирцевим кодом від компанії Mozilla. Він написаний на C/C++ і використовується в декількох продуктах від Mozilla, включаючи такі відомі, як Firefox.
Поширюється під потрійною ліцензією — MPL/GPL/LGPL.
Зміст |
Історія [ред.]
SpiderMonkey був написаний Бренданом Айком під час його роботи в Netscape Communications. Пізніше зроблений відкритим. Натепер SpiderMonkey підтримується Mozilla Foundation .
SpiderMonkey був написаний на мові Сі і включає в себе компілятор, інтерпретатор, декомпілятор, прибиральник сміття і стандартні класи. Він не надає робочого оточення, такого як DOM.
SpiderMonkey вбудовується в інші застосунки, які надають робоче оточення для JavaScript. Найпопулярнішими програмами є Mozilla Firefox і Mozilla Application Suite / SeaMonkey, також Adobe Acrobat і Adobe Reader, як рушій JavaScript для Yahoo! Widgets (раніше відомого під ім'ям «Konfabulator») і UOX3, емулятора Ultima Online.
SpiderMonkey, як і споріднений йому рушій Rhino, має підтримку стандарту ECMAScript для XML (E4X).
ActionMonkey [ред.]
У 2006 для Mozilla 2 планувалося використовувати Tamarin — відкриту віртуальну машину ActionScript, розроблену в Macromedia (пізніше придбану Adobe)[1]. Проект з інтеграції SpiderMonkey і Tamarin отримав кодову назву ActionMonkey. Пізніше цей проект був скасований в силу низки причин.[2]
TraceMonkey [ред.]
У 2009 до SpiderMonkey додана можливість компіляції JavaScript в машинний код, що суттєво прискорило виконання JavaScript коду. Проект отримав назву TraceMonkey.
Браузер Firefox, починаючи з версії 3.5, для виконання JavaScript коду використовує за замовчуванням TraceMonkey.TraceMonkey на wiki.mozilla.org</ref>
JaegerMonkey [ред.]
Для того, щоб досягти швидкодії, порівнянної з рушіями конкурентів, в 2010 до SpiderMonkey було вирішено додати JIT-компіляцію, засновану на компіляції цілого методу (en:method-based JIT)[3]. Проект отримав назву JaegerMonkey (JägerMonkey).
Браузер Firefox використовує JaegerMonkey починаючи з версії 4.0.
Примітки [ред.]
Посилання [ред.]
- SpiderMonkey (JavaScript-C) Engine
- Documentation for SpiderMonkey
- Spidermonkey's page for Open Source Links
- Are We Fast Yet? (Official benchmark and comparison)
|
|||||||||||
