A TinyGo egy Go nyelvi fordító, amelyet olyan területeken való használatra terveztek, mint a mikrokontrollerek, a WASM és a parancssori segédprogramok fejlesztése.
A TinyGo a Go projektben írt segédprogramokat és könyvtárakat használja, miközben alternatív módszert biztosít az LLVM projekt munkája alapján készült programok összeállításához.
Projekt céljai:
- Ügyeljen a végrehajtható fájlok minimális méretére.
- A legtöbb mikrokontrollert támogatja.
- WebAssembly támogatás.
- Jó CGo támogatás.
- Az eredeti Go kód támogatása változtatások nélkül.
Példa a LED-ek bekapcsolására mikrokontrolleren:
csomag fő
import(
"gép"
"idő"
)
func main () {
led := gép.LED
led.Configure(machine.PinConfig{Mode: machine.PinOutput})
a {
led.Low()
idő.alvás (idő. ezredmásodperc * 1000)
led.High()
idő.alvás (idő. ezredmásodperc * 1000)
}
}
A 0.6.0-s verzió sok változást tartalmaz. A főbbek a CGo, a js.FuncOF (Go 1.12+) továbbfejlesztett támogatásához, valamint két új fejlesztői táblához kapcsolódnak: Adafruit Feather M0 és Adafruit Trinket M0.
A változások teljes listája a címen érhető el GitHub projekt oldala.
Forrás: linux.org.ru