Интерпретатор JavaScript JerryScript от Samsung, характеризуемый как JavaScript-движок для Интернета вещей, достиг стабильности в своей версии 1.0.
JerryScript был написан компанией Samsung как JavaScript-движок для встраиваемых устройств. Он предназначен для работы на очень ограниченных устройствах, таких как микроконтроллеры, и хотя существует ряд конкурирующих JavaScript-движков, предназначенных для подобных ситуаций, преимущество JerryScript в том, что его поддерживает Samsung.
Как и его конкуренты, такие как Duktape, tiny-js и MuJS, JerryScript имеет небольшой размер, требуя менее 64 КБ оперативной памяти, чтобы быть доступным для движка. Код для движка также помещается менее чем в 200 КБ ПЗУ.
Движок поддерживает компиляцию на устройстве, выполнение и обеспечивает доступ к периферийным устройствам из JavaScript. Стабильный выпуск обеспечивает полное соответствие стандарту ECMAScript 5.1 и имеет размер двоичного файла 160 КБ при компиляции для ARM Thumb-2. Он написан на языке C99 для максимальной переносимости и предлагает поддержку моментальной компиляции исходного кода JavaScript в байт-код.
Официально поддерживаемыми платформами для стабильного выпуска 1.0 являются:
- x86-32, x86-64 и ARMv7 Linux.
- NuttX на STM32F4
- RIOT на STM32F4
- Zephyr на Arduino 101 и FRDM-K64F
- mbed OS 3.0 на FRDM-K64F, STM32F4, STM32F429ZI, F401RE
- Curie BSP на Arduino 101
Также имеется экспериментальная поддержка ESP8266. Помимо JerryScript, Samsung отвечает за IOT.js, фреймворк для Интернета вещей, построенный на JerryScript; и libuv, управляемую событиями кроссплатформенную асинхронную модель ввода/вывода, похожую на node.js.
Помимо стабильности, большим преимуществом этого выпуска является документация. Предыдущий выпуск практически не имел документации, но в этом выпуске есть руководство по началу работы и справочное руководство по API с разумным набором примеров кода.