L'annonce de la réécriture quasi totale du runtime JavaScript Bun, passant du langage Zig à Rust, a provoqué une onde de choc dans la communauté des développeurs. Si beaucoup y voient une victoire pour Rust et un abandon de Zig, une analyse plus nuancée révèle que ce départ pourrait en réalité être un atout majeur pour l'avenir de Zig.

Un pari risqué pour Bun, une aubaine pour Zig

Le projet Bun, acquis fin 2025 par la société Anthropic pour un montant non divulgué (les estimations allant d'un million à cent millions de dollars), a entrepris une migration massive de son code source. Cette décision est présentée par certains comme un coup marketing pour le modèle d'IA Claude, chargé de la traduction, et un pari technique risqué pour l'équipe de Bun.

Pour Zig, ce départ représente bien plus qu'une simple perte de projet. L'équipe de Bun avait une approche radicalement différente de la philosophie de Zig, privilégiant la vitesse et le « hype » au détriment de la stabilité. Ils avaient d'ailleurs reproché à Zig ses changement cassants et sa nature pré-1.0, allant même jusqu'à fork le langage pour tenter de l'adapter à leurs besoins. Leur départ est donc perçu comme un soulagement par la communauté Zig, qui prône un développement plus posé et artisanal.

Le test grandeur nature

Le véritable cadeau pour Zig est ailleurs. Anthropic vient de financer la plus claire des comparaisons « avant-après » : le même code, la même architecture, la même équipe, mais dans deux langages différents. Pendant des années, Bun tournait sur Zig. Désormais, la version traduite automatiquement en Rust est disponible.

Cette situation élimine tous les arguments sur l'instabilité ou les changements cassants de Zig. La communauté peut désormais observer en temps réel ce qui se passe. Si Bun devient soudainement plus fiable en Rust, cela pourrait indiquer que Zig était un frein. En revanche, si les bugs, les régressions et l'instabilité persistent, cela démontrera que les problèmes de Bun n'étaient pas liés à Zig.

Les scénarios possibles pour Bun

L'analyse de la situation par les observateurs met en lumière quatre scénarios principaux, qui détermineront l'impact pour Anthropic et pour l'équipe de Bun :

  • Scénario A : Succès complet. Le code Rust traduit est rapide et stable. Anthropic en tire un bénéfice marketing, mais Bun se retrouve avec le même produit, simplement dans un autre langage. Cependant, des vérifications précoces ont révélé plus de treize mille blocs « unsafe » dans le portage Rust, hérités du style de pointeurs de Zig. La communauté Rust pourrait devoir nettoyer ce code.

  • Scénario B : Peu fiable. Le runtime fonctionne mais présente des régressions étranges, des « panics » aléatoires et des cas limites non couverts par les tests. La confiance des utilisateurs en Bun, bâtie sur des promesses de performance, pourrait s'effriter, les poussant à revenir vers Node ou Deno.

  • Scénario C : Catastrophe totale. Des bugs graves cassent les applications en production. Les mises à jour deviennent un cauchemar. Anthropic subit une atteinte à son image, mais Bun pourrait ne pas s'en relever. Une fois la confiance perdue dans le domaine des runtime JavaScript, il est très difficile de la regagner.

  • Scénario D : Succès apparent, mais enfer de maintenance. Le code compile et fonctionne, mais il est laid, difficile à lire et rempli de motifs que nul n'écrirait à la main. Les nouvelles fonctionnalités prennent plus de temps, les bugs sont plus durs à traquer et le projet perd son élan. C'est le scénario le plus probable à moyen terme.

Conclusion

Loin d'être une perte, le départ de Bun libère Zig d'un projet qui ne correspondait pas à sa philosophie. Surtout, il offre au langage un banc d'essai public et impartial. « Zig n'a pas perdu son projet phare. Il a laissé une entreprise multi-milliardaire payer pour le crash test », résume un observateur. Le temps et les résultats techniques diront si ce pari était gagnant pour Bun, mais pour Zig, l'avenir semble riche en enseignements.