Cloudflare und Void Zero arbeiten zusammen mit Max Schwenk von Owner.com an tsrs, einem Rust-Port des TypeScript-Compilers. Das Projekt entsteht in enger Zusammenarbeit mit dem TypeScript-Team und wird als Teil der Werkzeugkette des Oxc-JavaScript-Compilers inkubiert. Das erklärte Ziel ist es, Entwicklern weniger Wartezeit auf die Prüfung ihres Codes und mehr Zeit zum Bauen zu verschaffen sowie schnelleres, speichereffizienteres TypeScript in mehr Umgebungen zu bringen, einschließlich des Browsers.
Das Team betont, dass tsrs kein Fork ist. Das TypeScript-Team behält die volle Kontrolle über Design und Richtung der Sprache. Ein Rust-Port muss den Entscheidungen des TypeScript-Teams eng folgen, da Funktionen oft jahrelang prototypisiert werden, bevor eine Implementierung gewählt wird, andernfalls droht der Port inkompatibel zu werden.
Erste Benchmarks zeigen, dass tsrs bei gleicher Anzahl an Typprüfungs-Workern bis zu 8x schneller läuft und rund 70 % weniger Speicher verbraucht als TypeScript 7.0. Die nächste TypeScript-Version, 7.1 Beta, ist bis zu 2,5x schneller als 7.0, und einige dieser Optimierungen wurden aus tsrs übernommen. Standardmäßig verwendet tsrs eine adaptive Konfiguration, die mehr Speicher für noch höhere Geschwindigkeit nutzt. Eine experimentelle Version kann über npm installiert werden.
Der Go-Port von TypeScript hat bereits große Fortschritte gebracht, doch das Team argumentiert, dass Rust zusätzliche Vorteile bietet. Das Speichermodell von Rust erlaubt eine einfachere Interaktion zwischen einem WebAssembly-Gast und seinem Host, während das Kompilieren von Go nach Wasm die Mitlieferung seines Garbage Collectors erfordert. Da Cloudflare Workers Build- und Deployment-Systeme in engen Schleifen ausführen, ist ein geringer Speicherbedarf sehr wichtig.
Quelle: Hacker News · Zusammengefasst von HeadlinesBriefing