Large Language Model-Powered Agent for C to Rust Code Translation
10 months ago
- #Memory-Safety
- #LLM
- #C-to-Rust
- C programming language is foundational for system-level software but has memory safety issues.
- Rust is a modern, memory-safe alternative to C.
- LLMs are being used for automating C-to-Rust translation of legacy code.
- Existing LLM-based approaches limit LLMs to static prompt-response behavior.
- Challenges in C-to-Rust translation include lack of parallel datasets and undefined intermediate steps.
- Proposed solutions: Virtual Fuzzing-based equivalence Test (VFT) and LLM-powered Agent for C-to-Rust code translation (LAC2R).
- VFT helps identify divergent behaviors between C and Rust code.
- LAC2R uses MCTS to organize intermediate steps for correct translation.
- LAC2R demonstrated effectiveness in large-scale, real-world benchmarks.