TypeScript wurde nach Rust portiert ... Und es ist dreimal schneller als Go
Original · TypeScript Got Ported To Rust... And It's 3x Faster Than Go
Key Takeaway
Ein neuer TypeScript-Compiler in Rust bewältigt Typprüfungen etwa 24-mal schneller als JavaScript und dreimal schneller als Go, da er mithilfe von KI-Agenten in nur drei Wochen entwickelt wurde.
Highlights
Ein neuer, vollständig kompatibler TypeScript-Compiler in Rust ist fast dreimal so schnell wie die Go-Version von Microsoft.
Das TypeScript-Repository mit 793 Dateien und rund 380.000 Zeilen Code dient als Leistungstest für den Vergleich der Compiler.
Der Rust-Compiler absolviert Basis-Typprüfungen in 0,3 Sekunden, während die JavaScript-Version dafür sieben Sekunden benötigt.
Die Entwicklung der Rust-Portierung dauerte durch den Einsatz von KI-Agenten unter Claude Opus 5.5 nur drei Wochen.
Mehr als 13.000 Programme aus der offiziellen Testsuite werden von der Rust-Version fehlerfrei bestanden.
Cloudflare und das Vite-Team entwickeln den Rust-Compiler gemeinsam mit dem TypeScript-Team weiter.
Dank Rust kommt der Compiler ganz ohne Garbage Collector aus und lässt sich als WebAssembly direkt im Browser oder in Sandboxes ausführen.
Timeline
Einführung und Hintergrund der Compiler
Der Build-Schritt von TypeScript läuft dank Tools wie ESBuild oder Vite sehr schnell ab. Die eigentliche Typprüfung in großen Codebasen dauert dagegen oft Minuten. Der Go-Compiler war bereits zehnmal so schnell wie die JavaScript-Version, während die neue Rust-Variante diese Leistung nochmals übertrifft.
- Microsoft hat den TypeScript-Compiler zuvor im Juli nach Go portiert.
- Ein neuer, vollständig kompatibler TypeScript-Compiler in Rust erzielt eine knapp dreimal so hohe Geschwindigkeit wie die Go-Variante.
- Die Typprüfung nimmt in großen Codebasen viel Zeit in Anspruch und unterscheidet sich vom reinen Build-Schritt, der Typen lediglich herausfiltert.
Leistungsvergleich und Benchmarks
Ein Test mit vier Szenarien vergleicht JavaScript, Go und Rust miteinander. In Szenario eins benötigt JavaScript sieben Sekunden, Go 0,7 Sekunden und Rust 0,3 Sekunden. Bei beschädigten Kerntypen steigt die Dauer bei JavaScript auf 13 Sekunden, während Go 2,2 Sekunden und Rust 0,5 Sekunden beanspruchen.
- Das TypeScript-Repository mit 793 Dateien und 380.000 Zeilen Code dient als Testgrundlage.
- In vier verschiedenen Testszenarien zeigt sich die Rust-Version durchgehend überlegen.
- Der Rust-Compiler ist im Durchschnitt rund 24-mal so schnell wie JavaScript und fast dreimal so schnell wie Go.
Entwicklung durch KI und Kompatibilität
Microsoft benötigte fast zwei Jahre für den Go-Compiler. Die Rust-Portierung entstand dagegen in drei Wochen durch KI-Agenten, die Microsofts Design Funktion für Funktion kopierten. Die Testsuite mit mehr als 13.000 Programmen stellt sicher, dass die Rust-Variante fehlerfrei arbeitet.
- Die Entwicklung der Rust-Version dauerte vom ersten Commit bis zur Ankündigung nur drei Wochen.
- Ein Entwickler steuerte ein Team von KI-Agenten unter der Leitung von Claude Opus 5.5, um den Go-Code nach Rust zu übertragen.
- Die Rust-Version besteht alle über 13.000 Tests der Suite und liefert exakt dieselben Fehlermeldungen wie das Original.
Einsatzzwecke und Ausblick
Cloudflare möchte Entwicklungstools in eigenen Sandboxes und direkt im Browser ausführen. Da Rust keinen Garbage Collector erfordert, lässt sich der Compiler optimal als WebAssembly verpacken. Zudem fließen entdeckte Leistungsoptimierungen der Rust-Portierung direkt in zukünftige Go-Versionen ein.
- Cloudflare und das Vite-Team entwickeln den Rust-Compiler gemeinsam mit dem TypeScript-Team weiter.
- Rust kommt im Gegensatz zu Go ohne Garbage Collector aus und eignet sich daher für die Ausführung als WebAssembly im Browser.
- Der Linter OXLint plant den Einsatz des Compilers für typbewusste Lint-Regeln.
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
