Chakra (рушій JavaScript)
Chakra — рушій JavaScript, розроблений Microsoft для власного веб-переглядача Microsoft Edge і низки інших продуктів компанії. Рушій є форком JScript рушія, що використовує Internet Explorer. Подібно до рушія виводу Edge і на відміну попередніх версій у Internet Explorer оголошеним наміром стала відповідність концепції "живий Веб".[2]
Тип | рушій JavaScript |
---|---|
Розробник | Microsoft |
Версії | 1.11.24 (9 грудня 2020)[1] |
Репозиторій | github.com/chakra-core/ChakraCore |
Операційна система | Microsoft Windows |
Стан розробки | активний |
Ліцензія | власницька з відкритими під ліцензією MIT компонентами |
Вебсайт | github.com/chakra-core/ChakraCore |
5 грудня 2015 розробник оголосив, що ключові компоненти Chakra будуть відкриті як ChakraCore, у січні 2016 сирцевий код був опублікований[3] на GitHub.
Огляд
Chakra відповідає стандартові ECMAScript 5.1 з частковою підтримкою ECMAScript 6.[4]
Рушій Chakra використовується в браузері Edge, СУБД Azure DocumentDB, продуктах Windows 10 IoT Core, Cortana і Outlook.com. Управління рушієм може здійснюватися через спеціальний API, який дозволяє вбудовувати його в сторонні застосунки. Наприклад, компанія Miсrosoft підготувала порт платформи Node.js, в якій рушій V8 замінений на Chakra, а також розвиває засоби для використання як JavaScript-рушія для NoSQL СУБД і ігрових застосунків.
За продуктивністю і функціональністю рушій відповідає можливостям браузера Windows 10, але ChakraCore поставляється без програмних інтерфейсів, специфічних для Windows, таких як діагностичний COM API і прошарок для інтеграції з браузером Edge і Universal Windows Platform. Замість цих API в ChakraCore представлені нові універсальні API.
Відкриття коду ChakraCore
У січні 2016 компанія Microsoft опублікувала[3] сирцеві тексти багатонитевого JavaScript-рушія ChakraCore, відкриття якого було анонсовано в грудні. Код відкритий під ліцензією MIT і розміщений на GitHub. Реалізація включає в себе JIT-компілятор для JavaScript з підтримкою платформ x86, x86_64 та ARM, збирач сміття, JavaScript Runtime (JSRT, для вбудовування рушія в застосунки), інтерпретатор і парсер з підтримкою стандарту ECMAScript 2015 і розширень WebAssembly, Asm.js, Async і SIMD.js.
Виноски
- Release 1.11.24 — 2020.
- Targeting Edge vs. Legacy Engines in JsRT APIs. Процитовано 10 вересня 2015.
- https://blogs.windows.com/msedgedev/2016/01/13/chakracore-now-open/
- Microsoft Edge Platform Status. Microsoft.com. Процитовано 10 вересня 2015.[недоступне посилання з червня 2019]