- Transpileur basé sur l’AST développé dans le but de partager la logique métier entre Go et TS
- Convertit en TypeScript les algorithmes, structures de données et logiques de concurrence du langage Go afin de permettre la réutilisation du code entre backend et frontend
- Struct, Interface, Channel, Goroutine, Pointer, Slice, Map et d’autres fonctionnalités majeures de Go sont mappées vers la syntaxe TypeScript
- Les goroutines sont converties en traitements asynchrones basés sur async/await, ce qui permet une exécution également dans un environnement navigateur
- Le système VarRef permet d’implémenter les références de pointeurs et le passage par valeur
- Prend en charge des fonctionnalités avancées du langage comme Generics, Reflection, Closure et fonctions anonymes
- Grande compatibilité avec la bibliothèque standard, notamment encoding/json ; la prise en charge de Reflection et de certaines extensions de la bibliothèque standard est encore en cours
- CLI et API sont toutes deux proposées
- CLI : compile un paquet Go en TypeScript sous la forme
goscript compile --package . --output ./dist
- Via l’API Go et l’API Node.js, il est possible d’appeler directement la conversion dans un programme
- Une approche expérimentale qui étend le modèle de concurrence concis et la sûreté de typage de Go à l’écosystème TypeScript
- Licence MIT
Aucun commentaire pour le moment.