HeadlinesBriefing HeadlinesBriefing.com

Eurydice compile Rust vers du C lisible

Hacker News •
×

Il y a quelques années, la seule façon de compiler du code Rust était d'utiliser le compilateur rustc avec LLVM comme backend. Depuis, plusieurs projets, dont mrustc, le support de Rust dans GCC (gccrs), rust_codegen_gcc et Cranelift, ont diversifié les implémentations de compilateurs Rust. Le projet le plus récent, Eurydice, vise à convertir le code Rust en code C épuré, utile dans les logiciels à haute assurance où les outils de vérification attendent du C.

Lancé en 2023, Eurydice fait partie du projet Aeneas, qui développe des outils pour appliquer la vérification formelle au code Rust. Maintenu par des chercheurs d'Inria et de Microsoft, Eurydice suit une structure de compilateur standard : analyse du Rust, conversion en IR, application de passes, puis production de C.

Contrairement à d'autres compilateurs, Eurydice préserve la structure du code tout en supprimant les constructions propres à Rust. Par exemple, il compile les fonctions de plus petit commun multiple en C lisible, avec des variables temporaires pour maintenir l'ordre d'évaluation. Bien que tous les programmes Rust ne se traduisent pas fidèlement, en raison des génériques et des itérateurs, Eurydice offre une transition plus fluide pour les environnements disposant de compilateurs C mais sans support de Rust.

Le projet comprend du code sous licences MIT et Apache-2.0 et accepte les contributions extérieures.

Source: Hacker News · Résumé par HeadlinesBriefing