Основатель QEMU и FFmpeg опубликовал JavaScript-движок QuickJS

Движoк oтличaeтся кoмпaктнoстью и oриeнтирoвaн нa встрaивaниe в другиe систeмы. Кoд прoeктa нaписaн нa языкe Си и рaспрoстрaняeтся пoд лицeнзиeй MIT. Равно как доступна сборка движка, скомпилированная в WebAssembly близ помощи Emscripten и пригодная для выполнения в браузерах. Осуществление JavaScript поддерживает спецификацию ES2019, в том числе и модули, асинхронные генераторы и прокси. Опционально поддерживаются нестандартные математические расширения для того JavaScript, такие как типы BigInt и BigFloat, а тоже перезагрузка операторов. По производительности QuickJS кардинально превосходит имеющиеся аналоги, например, в тесте bench-v8 опережает сердце XS на 35%, DukTape более нежели в два раза, JerryScript в три раза, а MuJS в семь редко. Кроме библиотеки для встраивания оживка в приложения проектом также предлагается толкователь qjs, который можно использовать для запуска JavaScript-стих из командной строки. Более того, доступен автор qjsc, способный на выходе производить пригодные для обособленного запуска исполняемые файлы, без- требующие внешних зависимостей. Основные особенности: Плотность и простота встраивания в другие проекты. Скомпилированное простейшее добавление занимает около 190 Кб; (и) еще как высокая производительность и быстрое время запуска. Усвоение 56 тысяч тестов на совместность с ECMAScript занимает около 100 секунд рядом выполнении на одном ядре обычного настольного ПК. Инициирование runtime занимает менее 300 микросекунд; Мала) полная поддержка спецификации ES2019 и полная правая рука приложения "B", определяющего компоненты для совместимости со старыми web-приложениями; Полное разрабатывание всех тестов из набора ECMAScript Test Suite; Крыша компиляции кода на языке Javascript в исполняемые файлы кроме внешних зависимостей; Сборщик мусора сверху основе подсчёта ссылок без цикличного выполнения чистки, позволивший успевать. A предсказуемого поведения и снижения потребления памяти; Оргнабор расширений для математических вычислений получай языке JavaScript; Оболочка для выполнения стих в режиме командной строки, поддерживающая контекстную подсветку заключение; Компактная стандартная библиотека с обвязками по-над Си-библиотекой. Проектом также развиваются три сопутствующие Си-библиотеки, задействованные в QuickJS и пригодные с целью отдельного применения: libregexp - быстрая выполнение регулярных выражений, полностью совместимых со спецификацией Javascript ES 2019; libunicode - компактная публичка для работы с Unicode; libbf - продажа с (c (аукциона операций с плавающей запятой произвольной точности и трансцендентных функций с точным округлением. Происхождение: http://www.opennet.ru/opennews/art.shtml?num=51079