HackerNews

CからRustへの自動変換

Automatically Translating C to Rust

https://cacm.acm.org/research/automatically-translating-c-to-rust/


ソフトウェア産業において、古い言語で開発されたレガシーシステムは、新しい言語に再実装されることが多い。特にC言語からRustへの移行が注目されている。Cはシステムプログラミングで広く使われているが、メモリバグによるセキュリティ脆弱性が問題視されている。Rustは強い安全性を持ちながら低レベルのメモリ制御も可能で、Cからの移行先として理想的な言語だ。自動CからRustへの変換ツールが開発されており、その中でC2Rustが特に成功している。C2RustはCの構文をRustの構文に適切に変換するが、完全にRustの言語機能を活かしたコードを生成することはできていない。これはRustが持つ独自の機能を十分に利用できないことを意味する。