ukukhululwa kwephrojekthi , esakha isihlanganisi solimi lwe-Go sezindawo lapho ukumelwa okuhlangene kwekhodi engumphumela kanye nokusetshenziswa okuphansi kwezinsiza kuyadingeka, njengezilawuli ezincane kanye namasistimu e-compact single-processor. Ikhodi ngaphansi kwelayisensi ye-BSD.
Ukuhlanganiswa kwezingxenyekazi eziqondiwe ezihlukahlukene kusetshenziswa i-LLVM, futhi ukusekelwa kolimi kunikezwa amalabhulali asetshenziswa ngokuyinhloko ochungechungeni lwamathuluzi wephrojekthi ye-Go. Uhlelo oluhlanganisiwe lungasebenza ngokuqondile kuma-microcontroller, okuvumela i-Go ukuthi isetshenziswe njengolimi lokubhala izikripthi ezizenzakalelayo.
Isisusa sokudala iphrojekthi entsha kwaba isifiso sokusebenzisa ulimi lwe-Go olujwayelekile kumadivayisi ahlangene - abathuthukisi bacabange ukuthi uma kukhona inguqulo ye-Python yama-microcontrollers, kungani-ke ungadali okufanayo ngolimi lwe-Go. esikhundleni se-Rust ngoba kulula ukuyifunda, ihlinzeka ngosekelo lwe-thread-agnostic for parallelism-based coroutine, futhi inikeza umtapo wezincwadi ojwayelekile ("kufakwe amabhethri").
Njengamanje, kusekelwa amamodeli e-microcontroller angu-15, okuhlanganisa amabhodi ahlukahlukene avela ku-Adafruit, Arduino, BBC micro:bit, ST Micro, Digispark, Nordic Semiconductor, Makerdiary, kanye ne-Phytec. Izinhlelo zingahlanganiswa futhi ukuze kusetshenziswe isiphequluli ngefomethi ye-WebAssembly kanye namafayela asebenzisekayo e- LinuxUsekelo lwabalawuli be-ESP8266/ESP32 , kodwa iphrojekthi ehlukile iyathuthukiswa yokwengeza usekelo lwe-chip ye-Xtensa ku-LLVM, okwamanje emakwe njengengazinzile futhi engakulungele ukuhlanganiswa ne-TinyGo.
Imigomo yephrojekthi ebalulekile:
Ukusekelwa kwezinhlelo eziningi ezibalulekile akuyona enye yezinhloso eziphambili,
ukwethulwa ngempumelelo kwenani elikhulu lama-coroutines (ukwethulwa kwama-coroutines ngokwako kusekelwa ngokugcwele), kufinyelelwa izinga lokusebenza lereferensi ye-gc compiler (ukwenza kahle kushiyelwa ku-LLVM kanti kwezinye izinhlelo zokusebenza i-Tinygo ingase isheshe kune-gc) futhi iphelele. nazo zonke izinhlelo zokusebenza ze-Go.
Umehluko omkhulu kusukela kumhlanganisi ofanayo I-Tinygo izama ukulondoloza imodeli yokuphatha inkumbulo eqoqwe udoti ye-Go futhi isebenzisa i-LLVM ukuze ikhiqize ikhodi ephumelelayo esikhundleni sokuhlanganisa isethulo esingu-C. I-Tinygo iphinde inikeze ngelabhulali entsha yesikhathi sokusebenza esebenzisa isihleli, isistimu yokwaba inkumbulo, nezibambi zezintambo ezithuthukiselwe amasistimu ahlangene. Amaphakheji amaningana, njengokuvumelanisa nokubonisa, akhiwe kabusha kusetshenziswa isikhathi esisha sokusebenza.
Izinguquko ekukhishweni okungu-0.7 zifaka phakathi ukuqaliswa komyalo "wokuhlolwa kwe-tinygo", ukusekelwa kokuqoqwa kukadoti kumabhodi amaningi aqondiwe (i-ARM Cortex-M based) kanye ne-WebAssembly, ukusekelwa kwebhodi le-HiFive1 rev B okusekelwe ekwakhiweni kwe-RISC-V kanye nebhodi le-Arduino nano33,
Ukusekelwa kolimi okuthuthukisiwe (usekelo lwezinkambu zebhithi kusetshenziswa ama-getter namasethi, usekelo lwezakhiwo ezingaziwa).
Source: opennet.ru
