- AST-basierter Transpiler, entwickelt mit dem Ziel, Business-Logik zwischen Go und TS zu teilen
- Wandelt Algorithmen, Datenstrukturen und Concurrency-Logik der Sprache Go in TypeScript um und unterstützt so die Wiederverwendung von Code zwischen Backend und Frontend
- Bildet zentrale Go-Features wie Struct, Interface, Channel, Goroutine, Pointer, Slice, Map auf TypeScript-Syntax ab
- Goroutines werden in asynchrone Verarbeitung auf Basis von async/await umgewandelt und können dadurch auch in Browser-Umgebungen ausgeführt werden
- Implementiert Pointer-Referenzen und Wertübergabe über das VarRef-System
- Unterstützt fortgeschrittene Sprachfunktionen wie Generics, Reflection, Closures und anonyme Funktionen
- Ist mit dem Großteil der Standardbibliothek kompatibel, darunter encoding/json; Reflection und einige Erweiterungen der Standardbibliothek sind noch in Arbeit
- Bietet sowohl CLI als auch API
- CLI: Kompiliert ein Go-Paket in TypeScript in der Form
goscript compile --package . --output ./dist
- Über die Go-API und die Node.js-API kann die direkte Umwandlung innerhalb von Programmen aufgerufen werden
- Ein experimenteller Ansatz, der das schlanke Concurrency-Modell und die Typsicherheit von Go auf das TypeScript-Ökosystem ausweitet
- MIT-Lizenz
Noch keine Kommentare.