Kutulutsidwa kwa Tinygo 0.7.0, LLVM-based Go compiler

Ipezeka kutulutsidwa kwa polojekiti Tinygo 0.7.0, yomwe ikupanga compiler ya chinenero cha Go ya madera omwe kuyimira kocheperako kwa ma code omwe atulukapo komanso kugwiritsa ntchito zinthu zochepa kumafunikira, monga ma microcontrollers ndi makina a compact single-processor. Kodi wogawidwa ndi pansi pa layisensi ya BSD.

Kuphatikizira kwamapulatifomu osiyanasiyana omwe akuwafunira kumayendetsedwa pogwiritsa ntchito LLVM, ndipo thandizo la zilankhulo limaperekedwa ndi malaibulale omwe amagwiritsidwa ntchito makamaka pazida za polojekiti ya Go. Pulogalamu yophatikizidwa imatha kuyenda molunjika pa ma microcontrollers, kulola Go kuti igwiritsidwe ntchito ngati chilankhulo cholembera zolemba zokha.

Cholinga chopanga pulojekiti yatsopanoyi chinali chikhumbo chofuna kugwiritsa ntchito chinenero chodziwika bwino cha Go pazida zazing'ono - omangawo adaganiza kuti ngati pali Python version ya microcontrollers, bwanji osapanga zofanana ndi chinenero cha Go. osankhidwa m'malo mwa Dzimbiri chifukwa ndizosavuta kuphunzira, zimapereka chithandizo cha ulusi-agnostic kwa coroutine-based parallelism, ndipo imapereka laibulale yodziwika bwino ("mabatire akuphatikizidwa").

В текущем виде поддерживается 15 моделей микроконтроллеров, включая различные платы Adafruit, Arduino, BBC micro:bit, ST Micro, Digispark, Nordic Semiconductor, Makerdiary и Phytec. Программы также могут быть собраны для запуска в браузере в формате WebAssembly и в виде исполняемых файлов для Linux. Поддержки контроллеров ESP8266/ESP32 Osati pano, koma pulojekiti ina ikupangidwa kuti iwonjezere chithandizo cha chipangizo cha Xtensa ku LLVM, chomwe pakali pano chili ndi chizindikiro chosakhazikika komanso chosakonzekera kuphatikizidwa ndi TinyGo.

Zolinga zazikulu za polojekiti:

  • Mbadwo wa owona yaying'ono executable;
  • Kuthandizira kwamitundu yodziwika bwino yama board a microcontroller;
  • Wokonzeka pa intaneti;
  • Thandizo la CGo lokhala ndi mutu wochepa poyitana ntchito za C;
  • Thandizo pamaphukusi ambiri okhazikika komanso kuthekera kophatikiza ma code omwe alipo osasintha.

    Kuthandizira machitidwe amitundu yambiri si chimodzi mwazolinga zazikulu,
    kukhazikitsidwa bwino kwa ma coroutines ambiri (kukhazikitsidwa kwa ma coroutines kumathandizidwa mokwanira), kukwaniritsa magwiridwe antchito a gc compiler (kukhathamiritsa kumasiyidwa ku LLVM ndipo m'mapulogalamu ena Tinygo atha kukhala mwachangu kuposa gc) ndikumaliza. kugwilizana ndi mapulogalamu onse a Go.

    Kusiyana kwakukulu kuchokera ku compiler yofanana emgo Tinygo amayesa kusunga kasamalidwe koyambira ka zinyalala ka Go ndikugwiritsa ntchito LLVM kuti ipange khodi yabwino m'malo mophatikiza chiwonetsero cha C. Tinygo imaperekanso laibulale yatsopano yogwiritsira ntchito yomwe imagwiritsa ntchito ndandanda, makina ogawa kukumbukira, ndi zingwe zogwirira ntchito zokongoletsedwa ndi makina ophatikizika. Maphukusi angapo, monga kulunzanitsa ndi kuwonetsera, amangidwanso pogwiritsa ntchito nthawi yothamanga.

    Zosintha pakutulutsidwa kwa 0.7 zikuphatikiza kukhazikitsidwa kwa lamulo la "tinygo test", kuthandizira kusonkhanitsa zinyalala pama board ambiri omwe mukufuna (ARM Cortex-M based) ndi WebAssembly, kuthandizira HiFive1 rev B board kutengera kamangidwe ka RISC-V ndi bolodi ya Arduino nano33,
    Thandizo lothandizira chilankhulo (kuthandizira magawo ang'onoang'ono pogwiritsa ntchito ma getters ndi setters, chithandizo chamagulu osadziwika).

    Source: opennet.ru

  • Gulani kuchititsa kodalirika kwamasamba okhala ndi chitetezo cha DDoS, ma seva a VPS VDS Gulani malo odalirika osungira mawebusayiti okhala ndi chitetezo cha DDoS, ma seva a VPS VDS | ProHoster