一个叫 ts-rust 的项目发布了 TypeScript 7 编译器的 Rust 移植版本,通过 npm 包 tsc-rs 分发,10 月 8 日宣布。
它是什么 目标是作为原生编译器、语言服务和编程接口的替代品,号称可以直接替换。实现上跟随微软基于 Go 的 TypeScript 编译器的算法和行为,保留熟悉的 tsc 命令行。
版本钉在 9 月 29 日的 TypeScript 7.1 开发修订版。
性能数据 项目自己公布的基准:在六个开源应用上,tsc-rs 的类型检查比 Go 版 TypeScript 7 编译器更快,几何平均优势 1.61 倍。
同一组测试里 Bun 的检查器整体更快,但仓库也指出了诊断信息上的差异,而且 Bun 不提供集成的 Effect 检查。
这些数字要打折看
- 是维护者自己跑的,不是独立基准。
- 测试环境是 Apple M4 Pro,五次测量取结果,关闭增量编译。
- 仓库提供了可复现的脚本,这点值得肯定。
不能忽视的几个限制
- 只提供 Linux x64 和 Apple Silicon 的预构建包,Windows 和 Linux arm64 还没有。
- 编辑器功能(快速修复、重构、hover、补全)都还没移植。
- 维护者自己标注为早期发布,并指向已知的局限列表。
最需要注意的一点 维护者说代码是 LLM 生成的,包括一个两周内完成的新实现,API 成本约 24000 美元,并且明确说代码没有被逐行人工审读。
这不代表代码一定有问题,但它决定了这个项目的可信度定位——当成可测试的工程实验,而不是已定型的替代方案。
想试的话怎么做
- 不用替换现有 TypeScript 包,它有独立归档和 npm 包两种形式。
- 一定要对着它钉住的那个上游修订版比对诊断信息,别拿 TypeScript 7.0 或者 native-preview 包对比。
- 跑你自己的构建和编辑器工作负载,别把项目的兼容率当成对你代码库的保证。
结论 兼容性加上原生性能,这个组合是有吸引力的。但平台缺口、编辑器功能缺失,加上作者自己的警告,决定了现在适合评估,不适合投产。
本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。