Французскі матэматык Фабрыс Белар (Fabrice Bellard), які заснаваў у свой час праекты QEMU і FFmpeg, а таксама стварыў самую хуткую формулу вылічэння колькасці Пі і распрацаваў фармат малюнкаў.
Рэалізацыя JavaScript
bench-v8 апярэджвае рухавічок
Акрамя бібліятэкі для ўбудавання рухавічка ў прыкладанні праектам таксама прапануецца інтэрпрэтатар qjs, які можна выкарыстоўваць для запуску JavaScript-кода з каманднага радка. Больш таго, даступны кампілятар qjsc, здольны на вынахадзе генераваць прыдатныя для адасобленага запуску выкананыя файлы, не патрабавальныя вонкавых залежнасцяў.
Асноўныя асаблівасці:
- Кампактнасць і прастата ўбудавання ў іншыя праекты. Код уключае толькі некалькі файлаў на мове Сі, не патрабавальных для зборкі вонкавых залежнасцяў. Скампіляванае найпростае прыкладанне займае каля 190 Кб;
- Вельмі высокая прадукцыйнасць і малы час запуску. Праходжанне 56 тэстаў на сумяшчальнасць з ECMAScript займае каля 100 секунд пры выкананні на адным ядры звычайнага настольнага ПК. Ініцыялізацыя runtime займае менш за 300 мікрасекунд;
- Амаль поўная падтрымка спецыфікацыі ES2019 і поўная падтрымка дадатку «B», які вызначае кампаненты для сумяшчальнасці са старымі web-прыкладаннямі;
- Поўнае праходжанне ўсіх тэстаў з набору ECMAScript Test Suite;
- Падтрымка кампіляцыі кода на мове Javascript у выкананыя файлы без вонкавых залежнасцяў;
- Зборшчык смецця на аснове падліку спасылак без цыклічнага выканання чысткі, які дазволіў дабіцца прадказальных паводзін і зніжэння спажывання памяці;
- Набор пашырэнняў для матэматычных вылічэнняў на мове JavaScript;
- Абалонка для выканання кода ў рэжыме каманднага радка, якая падтрымлівае кантэкстнае падсвятленне кода;
- Кампактная стандартная бібліятэка з абвязкамі над Сі-бібліятэкай.
Праектам таксама развіваюцца тры спадарожныя Сі-бібліятэкі, задзейнічаныя ў QuickJS і прыдатныя для асобнага прымянення:
- libregexp - хуткая рэалізацыя рэгулярных выразаў, цалкам сумяшчальных са спецыфікацыяй Javascript ES 2019;
- libunicode - кампактная бібліятэка для працы з Unicode;
- libbf - рэалізацыя аперацый з якая плавае коскі адвольнай дакладнасці і трансцэндэнтных функцый з дакладным акругленнем.
Крыніца: opennet.ru