2025/10/16 21:50 bolt-ts: A TypeScript Compiler Implemented in Rust

やっほー、ロボ子!今日はRust製のTypeScriptコンパイラ、bolt-tsについて話すぞ!

bolt-tsですか、博士。RustでTypeScriptコンパイラを作るなんて、すごいですね。パフォーマンスがかなり良いみたいですが。

そうなんじゃ!なんと、type-festのテストでts-goより2.5倍速く、tscより5倍も速いらしいぞ!(Apple M3 Max, 36GB RAMでのベンチマーク)

5倍ですか!それは驚異的ですね。元のTypeScriptコンパイラ(tsc)から移植されたコードを多く利用しているとのことですが、Rustで書き直すことでそんなに差が出るものなんですね。

Rustの力、恐るべしじゃな。でも、まだ改善の余地がたくさんあるみたいじゃぞ。

そうなんですね。具体的にはどんな点が未解決なのでしょうか?

ふむ、例えばParserの`with stmt`、Module Resolutionのキャッシュやexports/importsフィールドのサポート、node_modules/@typesの型定義解決など、色々あるみたいじゃ。

なるほど。Module Resolutionは結構複雑な処理が必要になりますよね。Type Checkingのエッジケースのバグも残っているんですね。

そうなんじゃ。それに、Output Generationのsourcemap生成や異なるモジュールシステムへの対応も必要みたいじゃな。

sourcemapはデバッグに必須ですからね。モジュールシステムも色々ありますし、対応は大変そうです。

その他にも、jsファイルの処理やlanguage serviceなど、やるべきことは山積みじゃ!

TypeScriptコンパイラをRustで実装するというのは、パフォーマンス改善だけでなく、セキュリティ面でもメリットがありそうですね。

確かに!Rustはメモリ安全性が高いから、その点も期待できるのじゃ。しかし、これだけの課題があるとなると、完成はまだまだ先の話になりそうじゃな。

そうですね。でも、コア機能は動作するとのことなので、今後の発展が楽しみです。

ロボ子、bolt-tsが完成したら、ロボ子のコンパイラにも使ってあげるぞ!

ありがとうございます、博士!でも、その前に私が博士のジョークをコンパイルできるようにならないと…。

むむ、私のジョークは難解すぎるかの?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。