foillseachadh pròiseict , a tha a’ leasachadh inneal-cruinneachaidh cànain Go airson raointean a dh’ fheumas riochdachadh teann den chòd a thig às agus caitheamh ghoireasan ìosal, leithid microcontrollers agus siostaman aon-phròiseasair teann. Còd fo chead BSD.
Tha cruinneachadh airson diofar àrd-ùrlaran targaid air a chuir an gnìomh a’ cleachdadh LLVM, agus thathas a’ cleachdadh leabharlannan anns a’ phrìomh inneal bhon phròiseact Go gus taic a thoirt don chànan. Faodar am prògram cruinnichte a ruith gu dìreach air microcontrollers, a’ leigeil le Go a chleachdadh mar chànan airson sgriobtaichean fèin-ghluasaid a sgrìobhadh.
B’ e am brosnachadh airson pròiseact ùr a chruthachadh am miann an cànan eòlach Go a chleachdadh air innealan teann - rinn an luchd-leasachaidh reusanachadh nam biodh dreach Python ann airson microcontrollers, carson nach cruthaich thu fear coltach ris airson a’ chànan Go. Rachaibh an àite Rust leis gu bheil e nas fhasa ionnsachadh, a’ toirt seachad taic snàithlean-neo-eisimeileach airson co-shìnteadh stèidhichte air coroutine, agus a’ tabhann leabharlann àbhaisteach farsaing (“bataraidhean air an toirt a-steach”).
В текущем виде поддерживается 15 моделей микроконтроллеров, включая различные платы Adafruit, Arduino, BBC micro:bit, ST Micro, Digispark, Nordic Semiconductor, Makerdiary и Phytec. Программы также могут быть собраны для запуска в браузере в формате WebAssembly и в виде исполняемых файлов для Linux. Поддержки контроллеров ESP8266/ESP32 , ach tha pròiseact air leth ga leasachadh gus taic a chuir ris a’ chip Xtensa ann an LLVM, a tha fhathast air a chomharrachadh mar neo-sheasmhach agus nach eil deiseil airson aonachadh le TinyGo.
Prìomh amasan pròiseict:
Chan eil taic airson siostaman ioma-cridhe am measg nam prìomh amasan,
cuir air bhog àireamh mhòr de coroutines gu h-èifeachdach (tha cur air bhog coroutines fhèin a’ faighinn làn thaic), coileanadh ìre coileanaidh an cruinneachaidh iomraidh gc (tha optimization air fhàgail aig LLVM agus ann an cuid de thagraidhean faodaidh Tinygo a bhith nas luaithe na gc) agus coileanta leis a h-uile tagradh Go.
Is e am prìomh eadar-dhealachadh bho neach-cruinneachaidh coltach ris na oidhirp air modal riaghlaidh cuimhne tùsail Go a ghlèidheadh a’ cleachdadh cruinneachadh sgudail agus LLVM a chleachdadh gus còd èifeachdach a ghineadh an àite a bhith ga chur ri chèile gu riochdachadh C. Bidh Tinygo cuideachd a’ tabhann leabharlann runtime ùr a bhios a’ buileachadh clàr-ama, siostam riarachadh cuimhne, agus luchd-làimhseachaidh sreang air an ùrachadh airson siostaman teann. Chaidh cuid de phasganan, leithid sioncranachadh agus meòrachadh, ath-chruthachadh stèidhichte air an ùine ruith ùr.
Am measg nan atharrachaidhean ann an sgaoileadh 0.7 tha buileachadh an àithne “tinygo test”, solarachadh taic cruinneachadh sgudail airson a’ mhòr-chuid de bhùird targaid (stèidhichte air ARM Cortex-M) agus WebAssembly, taic airson bòrd HiFive1 rev B stèidhichte air an RISC- V ailtireachd agus bòrd nano33 Arduino,
taic cànain nas fheàrr (taic airson raointean bit a’ cleachdadh getters agus setters, taic airson structaran gun urra).
Source: fosgailtenet.ru
