TypeScript a été porté en Rust... et c'est 3x plus rapide que Go

Original · TypeScript Got Ported To Rust... And It's 3x Faster Than Go

5:203 min readBetter Stack11/05/2026Computing/Software

Key Takeaway

Le portage du compilateur TypeScript en Rust, réalisé en trois semaines par des agents IA, surpasse la version Go avec une vitesse d'exécution multipliée par trois et une adaptation idéale pour WebAssembly.

Highlights

  • Un compilateur TypeScript entièrement compatible écrit en Rust a été développé, s'avérant presque trois fois plus rapide que la version Go.

  • Le test réalisé sur le dépôt TypeScript avec ses 793 fichiers et 380 000 lignes de code montre que le compilateur Rust est environ 24 fois plus rapide que l'ancien compilateur JavaScript.

  • Le développement du portage Rust a pris seulement trois semaines depuis son premier commit grâce à l'utilisation d'agents IA menés par Claude Opus 5.5.

  • Le portage en Rust a été réalisé en copiant fonction par fonction le compilateur Go de Microsoft, en s'appuyant sur la suite de tests gigantesque de TypeScript qui compte plus de 13 000 programmes.

  • La version Rust du compilateur est conçue pour être empaquetée en WebAssembly afin de s'exécuter dans des bacs à sable et directement dans le navigateur, sans l'encombrement d'un ramasse-miettes.

Timeline

  1. Introduction au compilateur TypeScript en Rust

    Microsoft avait porté le compilateur TypeScript vers Go en juillet, mais une version en Rust a fait son apparition, illustrant l'expansion de ce langage dans l'industrie tech. Les titres annoncent une vitesse comprise entre deux et huit fois supérieure, nécessitant une vérification concrète par des tests comparatifs.

    • Un compilateur TypeScript compatible écrit en Rust est désormais disponible.
    • Ce nouveau compilateur est presque trois fois plus rapide que la version Go développée par Microsoft.
  2. Rôle des compilateurs et benchmarks de performance

    L'étape de compilation classique retire les types rapidement, mais la vérification des types ralentit les projets massifs. Quatre scénarios de test ont été évalués, incluant des types valides, une erreur simple, un type central rompu provoquant une cascade d'erreurs, et des types récursifs profonds. Les résultats démontrent la supériorité nette de Rust sur JavaScript et sur Go dans toutes les configurations.

    • La conversion de code en JavaScript est rapide, tandis que la vérification des types sur de grandes bases de code s'avère très lente.
    • Le dépôt TypeScript utilisé pour le test comprend 793 fichiers et environ 380 000 lignes de code.
    • Le compilateur Rust atteint en moyenne une vitesse 24 fois supérieure à celle de JavaScript et près de trois fois supérieure à celle de Go.
  3. Développement par IA et méthodologie de portage

    Alors que le compilateur Go a demandé près de deux ans de développement à Microsoft, la version Rust a émergé en un temps record grâce à l'intelligence artificielle. Les agents ont reproduit le code fonction par fonction, s'appuyant sur les 13 000 petits programmes de test de TypeScript pour corriger les erreurs et garantir une stricte parité des messages d'erreur.

    • Le portage en Rust a nécessité seulement trois semaines depuis le premier commit.
    • Le projet a été piloté par un ingénieur dirigeant une équipe d'agents IA menée par Claude Opus 5.5.
    • La suite de 13 000 tests de TypeScript a permis de valider chaque fonction copiée du compilateur Go.
  4. Motivations techniques et intégration future

    Le choix de Rust s'explique par la volonté de le distribuer sous forme de WebAssembly sans les contraintes de mémoire d'un ramasse-miettes comme celui de Go. De plus, certaines optimisations découvertes lors de ce portage influencent déjà les évolutions de la version Go de Microsoft, et l'outil sera intégré au sein de la chaîne OXC et de Vite.

    • Cloudflare souhaite exécuter le compilateur dans des bacs à sable et dans le navigateur via WebAssembly.
    • Rust se distingue de Go par l'absence de ramasse-miettes, évitant ainsi d'alourdir le poids du code compilé.
    • L'équipe d'OXC prévoit d'intégrer ce portage pour des règles de linting conscientes des types dans OXLint.

Description

A fully compatible TypeScript compiler written in Rust just landed, and it's meant to be almost 3x faster than the Go port. We ran tsrs, the Go compiler and JavaScript tsc side by side on the TypeScript repo, and found out how it was built in three weeks. If slow type checks eat your day, watch this. 🔗 Relevant Links https://blog.cloudflare.com/typescript-rust-port https://github.com/oxc-project ❤️ More about us Radically better observability stack: https://betterstack.com/ Written tutorials: https://betterstack.com/community/ Example projects: https://github.com/BetterStackHQ 📱 Socials Twitter: https://twitter.com/betterstackhq Instagram: https://www.instagram.com/betterstackhq/ TikTok: https://www.tiktok.com/@betterstack LinkedIn: https://www.linkedin.com/company/betterstack 📌 Chapters: 0:00 Intro 0:40 What a TypeScript compiler actually does 1:32 JavaScript vs Go vs Rust: the benchmark 2:53 How it was built in three weeks 4:06 Why build it in Rust 4:45 What's next for tsrs

Write about this video