• ทรานสไพเลอร์แบบอิง AST ที่พัฒนาขึ้นโดยมีเป้าหมายเพื่อ แชร์บิสซิเนสลอจิกระหว่าง Go และ TS
  • แปลง อัลกอริทึม, โครงสร้างข้อมูล, ลอจิกด้าน concurrency ของภาษา Go เป็น TypeScript เพื่อรองรับ การนำโค้ดกลับมาใช้ซ้ำระหว่างแบ็กเอนด์และฟรอนต์เอนด์
  • Struct, Interface, Channel, Goroutine, Pointer, Slice, Map และฟีเจอร์หลักของ Go อื่น ๆ ถูก แมปเป็นไวยากรณ์ของ TypeScript
  • Goroutine ถูกแปลงเป็น การประมวลผลแบบอะซิงโครนัสบนพื้นฐาน async/await จึงสามารถทำงานได้ในสภาพแวดล้อมเบราว์เซอร์
  • ใช้ ระบบ VarRef เพื่อทำงานกับการอ้างอิงแบบพอยน์เตอร์และการส่งผ่านค่า
  • รองรับฟีเจอร์ภาษาขั้นสูง เช่น Generics, Reflection, Closure, ฟังก์ชันนิรนาม
  • รองรับไลบรารีมาตรฐานส่วนใหญ่ เช่น encoding/json ขณะที่ Reflection และส่วนขยายของไลบรารีมาตรฐานบางส่วน ยังอยู่ระหว่างพัฒนา
  • มีให้ใช้งานทั้ง CLI และ API
    • CLI: คอมไพล์แพ็กเกจ Go เป็น TypeScript ในรูปแบบ goscript compile --package . --output ./dist
    • สามารถเรียกการแปลงได้โดยตรงภายในโปรแกรมผ่าน Go API และ Node.js API
  • แนวทางเชิงทดลองในการขยาย โมเดล concurrency ที่เรียบง่ายและความปลอดภัยของชนิดข้อมูล ของ Go ไปสู่ระบบนิเวศ TypeScript
  • สัญญาอนุญาต MIT

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น