Vercel Labs portiert den TypeScript-Compiler nach TypeScript – und er besteht jeden Test
tsc-ts: TypeScript written in TypeScript
Vercel Labs hat den TypeScript-Compiler 7.0.2 (tsgo) in idiomatisches TypeScript nachgebaut und mit scriptc zu nativem Code kompiliert. Scanner, Parser, Binder, Modulauflösung, Type Checker und Emit werden gegen tsgo auf dem offiziellen Testkorpus mit rund 12.500 Dateien geprüft – laut Projekt stimmen alle Ergebnisse überein. Das Paket tsc-ts lässt sich per npm installieren und bietet sogar einen kompatiblen --api-Server.
Jeder Teil wird mit tsgo auf TypeScripts Testkorpus verglichen – etwa 12.500 Dateien, 17.000 Einheiten nach dem Aufteilen von Mehrdatei-Fällen.
- pizlonator
Ich habe es bestätigt: Es ist schneller als die Go-Version, was sehr überraschend und extrem beeindruckend ist!
Einschränkungen:
- Ich glaube nicht, dass es richtig ist zu sagen, es sei „in TypeScript geschrieben“. Tatsächlich ist es in dem Subscript von TypeScript geschrieben, das scriptc unterstützt. scriptc ist nicht einfach nur eine Teilmenge von ts; es weicht sogar auf hinterhältige Weise von der ts-Semantik ab, um seine Optimierungen zu ermöglichen. Diese Leute haben also wirklich eine TypeScript-ähnliche native Sprache mit einer Art RC-GC-Hybrid und einer Reihe von Einschränkungen geschaffen. Unklar, ob das besser ist, als einfach eine neue Sprache zu schaffen.
- Sehr wahrscheinlich wurde es gemeinsam mit scriptc entwickelt, sodass es maximal von genau den Idiomen profitiert, die scriptc gut unterstützt. Und ich würde wetten, dass sie Optimierungen speziell für scriptc eingebaut haben, um dieses Ergebnis zu erzielen.
Das könnte nützlich sein, vorausgesetzt, sie investieren in die Unterstützung dafür, und du bist die Art von Person, die 2x schnellere ts-Compiles braucht.
- nektro
> Ein experimenteller TypeScript-Port des TypeScript 7.0.2-Compilers (TypeScript-Go, oder tsgo), mit scriptc zu nativem Code kompiliert.
Wäre es nicht einfacher gewesen, mit v6 zu beginnen, der Version, die bereits in TypeScript steckt?
- _1tan
Hat jemand gegen Buns neuen time typecheck gebenchmarkt, der in v 1.4.3 gelandet ist? Ich würde es machen, bin aber gerade zu weit von meiner Maschine weg.
- tallowen
Das Hin und Her zwischen dem Schreiben von Tools in JavaScript und Go oder Rust scheint sich gerade in einem instabilen Gleichgewicht zu befinden:
- Go / Rust: Es ist einfacher denn je, bestehende Tools in performanteren Sprachen neu zu schreiben
- JavaScript: Die v8-Runtime für vercel oder cloudflare workers ist eine viel günstigere Möglichkeit, bestimmte Workloads (z. B. konversationelle Agenten) auszuführen, als eine schwergewichtige VM laufen zu lassen. Siehe just bash als ein weiteres Beispielprojekt, das dies ausnutzt (https://github.com/vercel-labs/just-bash)
Ich bin gespannt, was passieren wird!
- drewbitt
Ich weiß nicht mehr, was ein Meme ist und was nicht..