QuickJS 发布 2019-08-18 更新

来源: 投稿
作者: llgoer
2019-08-18

QuickJS 发布了 2019-08-18 更新

  • 增加os.realpath, os.getcwd, os.mkdir, os.stat, os.lstat,
      os.readlink, os.readdir, os.utimes, std.popen
  • 模块自动检测
  • 增加import.meta
  • bug修复

QuickJS 是一个小型并且可嵌入的 Javascript 引擎,它支持 ES2019 规范,包括模块,异步生成器和代理器。

它可选支持数学扩展,例如大整数 (BigInt),大浮点数 (BigFloat) 以及运算符重载。

主要功能

  • 轻量而且易于嵌入:只需几个C文件,没有外部依赖,一个 x86 下的简单的“hello world”程序只要 180 KiB。
  • 具有极低启动时间的快速解释器: 在一台单核的台式 PC 上,大约在 100 秒内运行 ECMAScript 测试套件 56000 次。运行时实例的完整生命周期在不到 300 微秒的时间内完成。
  • 几乎完整实现 ES2019 支持,包括: 模块,异步生成器和和完整 Annex B 支持 (传统的 Web 兼容性)。
  • 通过 100% 的 ECMAScript Test Suite 测试。
  • 可以将 Javascript 源编译为没有外部依赖的可执行文件。
  • 使用引用计数(以减少内存使用并具有确定性行为)的垃圾收集与循环删除。
  • 数学扩展:BigInt, BigFloat, 运算符重载, bigint 模式, math 模式.
  • 在 Javascript 中实现的具有上下文着色和完成的命令行解释器。
  • 采用 C 包装库构建的内置标准库。

项目网址

官网:https://bellard.org/quickjs/

中文:https://github.com/quickjs-zh/QuickJS

展开阅读全文
9 收藏
分享
加载中
最新评论 (5)
坐等出配套 JIT
2019-08-20 03:17
0
回复
举报
弱弱的问下:为什么要jit?不是直接编译成可执行文件吗?😇
2019-11-15 12:08
0
回复
举报
目前 QuickJS 编译成可执行以后还是对 Bytecode 解释执行的。说白了编译的出来的“可执行”文件里打包了 Bytecode 和解释器而已。并不是真正的 AOT。
2019-11-28 00:00
0
回复
举报
虽然用不到,但你的技术确实是六
2019-08-19 09:23
0
回复
举报
又不是他写的,是qemu虚拟机和ffmpeg的作者写的
2019-08-19 17:41
0
回复
举报
更多评论
5 评论
9 收藏
分享
返回顶部
顶部