Ladybird adopts Rust, with help from AI
Ladybird cherche un langage sûr pour la mémoire afin de remplacer C++, et a opté pour Rust, l’interopérabilité C++ restant limitée et le support plateforme hors de l’écosystème Apple étant restreint. Rust est choisi pour son écosystème et ses garanties de sécurité, et des projets comme Firefox et Chromium l’ont déjà intégré, ce qui rend sa candidature convaincante pour Ladybird. La première cible est LibJS, dont les composants autonomes bénéficient de test262, et la traduction a été réalisée avec Claude Code et Codex sous direction humaine, suivie de passes d’examen adversarial pour déceler les erreurs. Les résultats montrent une sortie byte-for-byte identique entre les pipelines, environ 25 000 lignes de Rust portées en deux semaines, et zéro régression vérifiée par les tests et l’égalité des AST et du bytecode. La suite prévoit que ce travail ne devienne pas le cœur du projet; le moteur restera en C++, avec des portions portées vers Rust en tant que sous-système coexistant via des frontières d’interopérabilité, et une coordination avec l’équipe centrale avant tout portage.