TinyGo Go hizkuntza-konpilatzailea da, hala nola, mikrokontrolagailuak, WASM eta komando-lerroko utilitateen garapena bezalako eremuetan erabiltzeko.
TinyGo-k Go proiektuan idatzitako utilitateak eta liburutegiak erabiltzen ditu, LLVM proiektuaren lanean oinarritutako programak konpilatzeko metodo alternatibo bat eskaintzen duen bitartean.
Proiektuaren helburuak:
- Ziurtatu fitxategi exekutagarrien gutxieneko tamaina.
- Mikrokontrolagailu kopuru handiena onartzen du.
- WebAssembly laguntza.
- CGo laguntza ona.
- Jatorrizko Go kodearen laguntza aldaketarik gabe.
Mikrokontrolagailu batean LED pizteko erabilera adibidea:
pakete nagusia
inportatu (
"makina"
"denbora"
)
funtzio nagusia () {
led := makina.LED
led.Configure(makina.PinConfig{Modua: machine.PinOutput})
{rentzat
led.Baxua()
denbora.Lo (denbora.Milisegundo * 1000)
led.Altua()
denbora.Lo (denbora.Milisegundo * 1000)
}
}
0.6.0 bertsioak aldaketa asko ditu. Nagusiak CGo, js.FuncOF (Go 1.12+) laguntza hobetuari dagozkio, baita bi garapen-plaka berriekin ere: Adafruit Feather M0 eta Adafruit Trinket M0.
Aldaketen zerrenda osoa helbidean dago eskuragarri GitHub proiektuaren orria.
Iturria: linux.org.ru