Kiesel 开发日志第 15 期:发布 0.4.0
来源:linus.dev — 2026-10-08
📋 概述
Linus Groh 的 JavaScript 引擎 Kiesel 完成向 Zig 0.17 的迁移,并发布 0.4.0,含 2.5 个月里的 64 个提交。新增 Kiesel.args 与 Kiesel.env,让脚本能读参数与环境变量,配合已有的文件 IO 就可以写出一个 cat(1) 克隆。语言特性上补齐了 Iterator Join、Includes、Chunking 这批评审中的新提案,以及仍处 Stage 3 的 Await Dictionary。最费力的部分是把 Kiesel 移植到 SerenityOS:需要把该目标支持逐步上游进 Zig、改动若干 LibC 与内核代码并打包。字节码解释器还补齐了内联缓存——多态属性访问、计算属性访问与原型查找,微基准普遍提速 20–30%。
🔑 核心要点
- 发布 Kiesel 0.4.0,含 2.5 个月里的 64 个提交,并完成向 Zig 0.17 的迁移
- 新增 Kiesel.args 与 Kiesel.env,配合已有的文件 IO 足以写出 cat(1) 克隆
- 实现了 Iterator Join / Includes / Chunking,以及仍处 Stage 3 的 Await Dictionary
- SerenityOS 移植被视为作者最爱的一次工作:上游 Zig 目标支持、改 LibC 与内核、再打包
- 补齐内联缓存:多态属性访问(4 个以内)、计算属性访问、原型查找,微基准提速 20–30%
- 下个版本的目标:让解析器变快
💡 金句
这些实现加起来只有几百行,却在微基准里稳定带来 20–30% 的提速。
👍 0
👎 0
← 返回 Lobsters 首页