Основатель QEMU и FFmpeg опубликовал JavaScript-движок Micro QuickJS
Французский математик Фабрис Беллар (Fabrice Bellard), основавший в своё время проекты QEMU, FFmpeg, BPG, QuickJS, TinyGL и TinyCC, опубликовал новый JavaScript-движок для встраиваемых систем - Micro QuickJS, способный компилировать и выполнять JavaScript-программы, потребляя всего 10 КБ ОЗУ. Вместе с Си-библиотекой движок занимает примерно 100 КБ постоянной памяти. Возможна компиляция JavaScript в байткод и отдельный запуск байткода. Код проекта написан на языке Си и распространяется под лицензией MIT.
Движок поддерживает подмножество возможностей языка JavaScript, близкое к спецификации ECMAScript 5 (ES2019), но предъявляет более строгие требования к коду, не допускающие использования некоторых JavaScript-конструкций, неэффективных или приводящих к ошибкам.
Например, глобальные переменные обязательно должны объявляется через ключевое слово "var", запрещено использование "with", массивы не могут иметь пустоты, невозможна инициализация при объявлении вида "new Number(1)", из eval невозможен доступ к локальным переменным.
Другими отличиями от QuickJS является не использующая стек виртуальная машина; ...
и т.д.
https://github.com/bellard/mquickjs
Post #1149
2.36K
- 🔥 27
- 👍 7
- ❤ 6
- 👎 1
- 👀 1