RocコンパイラがRustからZigへの移植でFeature Parityを達成

原題: How Our Rust-to-Zig Rewrite Is Going

なぜ重要か

オープンソースコンパイラのRust→Zig移植事例として、言語選択がバイナリサイズや開発コストに与える影響を示す具体的な参照点となる。

プログラミング言語Rocの開発チームは、約30万行のRustコードをZigで書き直す作業を開始してから487日後に、新旧コンパイラのFeature Parityというマイルストーンを達成した。新コンパイラはWASMバイナリのサイズを旧来比で半分以下に削減するなどの成果も示している。正式リリースは2026年中を予定している。

Rocプログラミング言語の開発者Richard Feldman氏は2026年7月15日、約1年半にわたって進めてきたRustからZigへのコンパイラ書き直しが、旧コンパイラとのFeature Parityを達成したと報告した。

新コンパイラの実力を示す事例として、Brendan Hansknecht氏が2024年に制作したWASM-4ゲーム「Rocci Bird」を新コンパイラでビルドすることに成功した。このゲームはRocコード1,000行未満で構成されており、`roc build --opt=size`コマンドで出力されるWASMバイナリは31KBと、旧コンパイラが生成したバイナリのサイズの半分以下に収まった。また、roc-lang.orgのホームページからでも2.5MBのWebAssemblyバイナリを通じてブラウザ上でRocコードを実行できる環境が整備された。

今回のRewriteにかかった期間は487日で、Bunプロジェクトが最近報告した約50万行のZigからRustへの移植(11日間)と比べて大幅に長い。Feldman氏はこの差について、Bunが直接ポートを行ったのに対し、Rocは言語仕様やコンパイラの設計そのものを見直しながら書き直しを進めたという根本的な違いがあると説明している。

主な貢献者としては、新パーサーを担当したAnthony Bullard氏とSam Mohr氏、型チェッカーを担当したJared Ramirez氏、ラムダセット解決システムを担当したAyaz Hafiz氏、そして多岐にわたる作業で最大の貢献者とされるAnton-4氏とLuke Boswell氏の名前が挙げられた。また、Exercismの入門演習108問を手動で更新したAurélien Geron氏の貢献も紹介された。

スポンサーとしてはrwx、Lambda Class、NoRedInkほか複数の企業・個人が支援を続けている。今回のFeature Parity達成はマイルストーンに過ぎず、正式版リリースとなるバージョン0.1.0は2026年内を目指している。

出典

rtfeldman.com — 元記事を読む →