นับตั้งแต่การเปิดตัวในปี 2019 ที่เน้นไปที่ Arduino และ BBC micro:bit ปัจจุบัน TinyGo ได้ขยายการรองรับอุปกรณ์อย่างก้าวกระโดด ครอบคลุมบอร์ดจาก Adafruit, ESP32 ไปจนถึง Nintendo Game Boy Advance การพัฒนาครั้งนี้ทำให้ TinyGo กลายเป็นทางเลือกที่น่าสนใจสำหรับนักพัฒนาที่ต้องการใช้ภาษา Go ในโปรเจกต์ฮาร์ดแวร์
นอกจากนี้ TinyGo ยังได้เพิ่มการรองรับ WebAssembly (WASM) ซึ่งขยายขอบเขตการใช้งานออกไปอีก ทำให้ภาษา Go สามารถนำไปใช้ในสภาพแวดล้อมต่างๆ ได้หลากหลายยิ่งขึ้น และแม้ว่า TinyGo จะไม่ใช่ภาษา Go ฉบับสมบูรณ์ แต่ก็มีการเพิ่มแพ็กเกจไลบรารีมาตรฐานมากขึ้นกว่าเดิมอย่างเห็นได้ชัด
หนึ่งในคุณสมบัติใหม่ที่สำคัญคือการนำระบบ Garbage Collection มาใช้ ซึ่งเป็นจุดขายสำหรับผู้ที่ชื่นชอบ Go อย่างไรก็ตาม ผู้พัฒนาได้ยอมรับว่าการทำงานของ Garbage Collection ใน TinyGo ยังช้ากว่า Go เวอร์ชันเต็ม และไม่สามารถใช้งานได้บนชิป AVR หรือใน WebAssembly
แม้จะมีการพัฒนาไปมาก แต่ข้อจำกัดที่สำคัญที่สุดคือการขาดการรองรับการเชื่อมต่อไร้สาย ซึ่งอาจเป็นอุปสรรคใหญ่สำหรับหลายแอปพลิเคชัน โดยเฉพาะอย่างยิ่งสำหรับชิปอย่าง ESP8266 ที่มี Wi-Fi เป็นจุดเด่นหลัก ถึงแม้จะใช้งานในฐานะไมโครคอนโทรลเลอร์ทั่วไปได้ แต่การขาดคุณสมบัติไร้สายนี้ถือเป็นข้อเสียที่ต้องพิจารณาอย่างจริงจัง
อย่างไรก็ตาม สำหรับแฟนๆ ภาษา Go การพัฒนาของ TinyGo ในครั้งนี้ย่อมสร้างความพึงพอใจและเปิดช่องทางใหม่ๆ ในการสร้างสรรค์โปรเจกต์ ซึ่งถือเป็นความก้าวหน้าที่น่าจับตามองในโลกของการพัฒนาไมโครคอนโทรลเลอร์
🏷️ หมวดหมู่: Microcontrollers, Go, golang, tinygo
🔗 อ่านบทความฉบับเต็ม: hackaday
