写点什么

Moddable SDK 为物联网开发提供 JavaScript 引擎:不到 32KB

  • 2018-11-16
  • 本文字数:927 字

    阅读完需:约 3 分钟

Moddable SDK为物联网开发提供JavaScript引擎:不到32KB

Moddable SDK 为物联网开发提供了一个 JavaScript 引擎,支持超过 99%的 ES2017 规范,初始大小不到 32KB。


Moddable XS7主要针对 ES2017,而 XS 的当前主分支通过了超过 99%的 ES2018 规范测试。


Moddable SDK 将 XS JavaScript 引擎与图形、网络和各种工具(包括调试器和模拟器)结合在一起。SDK 还包含了可在微控制器上运行的Piu用户界面框架


为了帮助开发人员入门,Moddable Zero提供了带有小型触摸屏的参考硬件,价格为 20 美元,另需运费和税金,尽量保持可承受的硬件价格:


Moddable Zero 选择的所有组件以降低成本为目标。两个主要组件分别是 NodeMCU 主板和触摸屏。 NodeMCU 模块带有 ESP8266、Wi-Fi 天线、Flash ROM、FTDI 芯片和 USB 连接器。触摸屏是一种无品牌 QVGA(240 x 320)显示屏,具有 16 位像素,由 ILI9341 显示控制器和 XPT2046 电阻式触摸控制器驱动。我们本来想使用电容式触摸屏,但价格太高。也就是说,我们的触摸驱动器通过 XPT2046 提供可靠的触摸输入。


Moddable 是众多 JavaScript 引擎中的一种,但它比其他支持微控制器的引擎更具优势,它支持适用于微控制器的 JavaScript 语言新特性:


Duktape:160KB 闪存和 64KB 系统 RAM,支持完整的 ES5.1 和 ES2015 及更新特性的子集;


Espruino:128KB 闪存和 8KB 系统 RAM,部分支持 ES2015;


JerryScript:64KB 闪存和 200KB ROM,完全支持 ES5.1;


mJS:50KB 闪存和 1KB 系统 RAM,支持 ES2015 子集。


TC-39上的Moddable演示文稿解释了 Moddable 是如何构建出来的以及现代 JavaScript 引擎如何被塞进具有很小内存的设备中。


2018 FullStack大会上,JavaScript 作者 Brendan Eich 在被问及现今 JavaScript 方面哪些东西最能打动他时,他提到了 Moddable:


Moddable 支持没有 eval 和解析器的 ES6,运行在 48K 的 ROM 和 48K 的 RAM 中。这太让人感到吃惊了。他们使用 ES6 中的 object.freeze 功能将东西放入 ROM 中,这太奇妙了。


Moddable 使用了组合开源许可协议,包括 GPL 3.0、LGPL 3.0、Apache 2.0 和 Creative Commons Attribution 4.0。Moddable 也可以在商业许可下使用。欢迎通过Moddable GitHub项目参与贡献,特别是扩展Moddable的模块


查看英文原文:[Moddable IoT JavaScript Engine in Less Than 32KB](


2018-11-16 10:261614
用户头像

发布了 731 篇内容, 共 473.0 次阅读, 收获喜欢 2008 次。

关注

评论

发布
暂无评论
发现更多内容

Mysql 温故知新系列「触发器详解」

安逸的咸鱼

MySQL 7月月更

Okaleido或杀出NFT重围,你看好它吗?

BlockChain先知

模块1 作业

【萌新解题】四数之和

面试官问

LeetCode

Vscode 搭建 C / C++ 开发环境

攻城狮杰森

c c++ vscode 开发环境 7月月更

Qt | 控件之QComboBox

YOLO.

qt 7月月更

函数初认识-下

芒果酱

C语言 7月月更

Vue3 状态管理 Pinia 快速入门指南

程序员海军

Vue 状态管理 7月月更

现场可程式化逻辑闸阵列 FPGA

贾献华

7月月更

排序子序列与倒置字符串

未见花闻

7月月更

uni-app进阶之自定义【day13】

恒山其若陋兮

7月月更

王者荣耀商城异地多活架构设计

地下地上

架构实战营

C#入门系列(二十二) -- 面向对象之多态

陈言必行

7月月更

实习是步入社会的一道坎

KEY.L

7月月更

分布式事务的性能设计

穿过生命散发芬芳

分布式事务 7月月更

你学会如何将项目部署到Linux系统上了吗?要不我带你耍耍。

Java学术趴

7月月更

ArkUI开发框架组件的生命周期详解

坚果

HarmonyOS OpenHarmony Open Harmony 7月月更

Flutter 使用 AnimatedSwitcher 做场景切换

岛上码农

flutter ios 前端 安卓开发 7月月更

C++ Workflow异步调度框架 - 性能优化网络篇

1412

c++ 开源 workflow 异步调度 网络框架

Linux tar打包

工程师日月

Linux tar 7月月更

群里的初级工程师求助说,要采集采招数据,必须给他安排上

梦想橡皮擦

Python 爬虫 7月月更

Zabbix 6.0 源码安装以及 HA 配置

耳东@Erdong

zabbix ha 7月月更 zabbix 6.0

zookeeper-watcher的javaApi相关使用

zarmnosaj

7月月更

模块7(王者荣耀商城异地多活架构设计)

Geek_701557

Istio XDS配置生成实现

阿泽🧸

envoy 7月月更

Setup的使用技巧

bo

Vue 前端 7月月更

长安链学习研究-存储分析wal机制

长安链

如何在Linux中比较多个文件?这12个优秀工具了解一下!

wljslmz

Linux 7月月更 文件比较

读书笔记之《深入理解Java虚拟机:JVM高级特性与最佳实践》(下)

蔡农曰

Java 后端 JVM 后端技术 Java 开发

C++ Workflow 异步编程框架 - 性能优化上篇

1412

c++ GitHub 开源 异步编程 workflow

Moddable SDK为物联网开发提供JavaScript引擎:不到32KB_5G/IoT_Dylan Schiemann_InfoQ精选文章