Mwepụta nke Tinygo 0.7.0, ihe nchịkọta Go dabere na LLVM

Dị ntọhapụ oru ngo Ngwa ngwa 0.7.0, nke na-emepe ihe nchịkọta asụsụ Go maka mpaghara chọrọ nnochite anya nke koodu na-esi na ya pụta na oriri ihe onwunwe dị ala, dị ka microcontrollers na kọmpat otu-processor usoro. Koodu kesara site n'okpuru ikikere BSD.

A na-eji LLVM arụ ọrụ nchịkọta maka nyiwe ebumnuche dị iche iche, a na-ejikwa ọba akwụkwọ ndị ejiri na ngwa ngwa sitere na ọrụ Go na-akwado asụsụ ahụ. Enwere ike ịme mmemme a chịkọtara ozugbo na microcontrollers, na-enye ohere ka ejiri Go mee ihe dịka asụsụ maka ide edemede akpaaka.

Ihe mkpali maka ịmepụta ọrụ ọhụrụ bụ ọchịchọ iji asụsụ Go a ma ama na ngwaọrụ kọmpat - ndị mmepe chere na ọ bụrụ na enwere ụdị Python maka microcontrollers, yabụ gịnị kpatara na ị gaghị emepụta nke yiri ya maka asụsụ Go. Gaa ahọpụtara kama nchara n'ihi na ọ dị mfe ịmụta, na-enye nkwado na-adabereghị na eri maka myirịta dabere na coroutine, ma na-enye nnukwu ọba akwụkwọ ọkọlọtọ ("batrị gụnyere").

N'ụdị dị ugbu a, a na-akwado ụdị microcontroller 15, gụnyere bọọdụ dị iche iche sitere na Adafruit, Arduino, BBC micro: bit, ST Micro, Digispark, Nordic Semiconductor, Makerdiary na Phytec. Enwere ike chịkọta mmemme ka ọ na-agba ọsọ na ihe nchọgharị n'ụdị WebAssembly yana dị ka faịlụ nwere ike ime maka Linux. Na-akwado ndị njikwa ESP8266/ESP32 Ọbụbeghị, ma a na-emepụta ọrụ dị iche iche iji gbakwunye nkwado maka mgbawa Xtensa na LLVM, bụ nke a ka na-egosi na ọ naghị eguzosi ike na ọ bụghị njikere maka ntinye na TinyGo.

Ebumnuche ebumnuche ọrụ:

  • Ọgbọ nke ukwuu kọmpat executable faịlụ;
  • Nkwado maka ụdị ndị a na-ahụkarị nke mbadamba microcontroller;
  • Enwere ike itinye ngwa maka Weebụ;
  • Nkwado CGo na obere ego mgbe ị na-akpọ ọrụ na C;
  • Nkwado maka ọtụtụ ngwugwu ọkọlọtọ yana ikike ịchịkọta koodu dị adị na-agbanweghị ya.

    Nkwado maka sistemụ ọtụtụ isi abụghị n'etiti ebumnuche ndị bụ isi,
    Mwepụta nke ọma nke ọnụ ọgụgụ dị ukwuu nke coroutines (mmalite nke coroutines n'onwe ya na-akwado nke ọma), mmezu nke ọkwa arụmọrụ nke onye na-agụ akwụkwọ ntụaka gc (kachasị mma hapụrụ LLVM na ụfọdụ ngwa Tinygo nwere ike ịdị ngwa karịa gc) wee zuo oke. ndakọrịta na ngwa Go niile.

    Isi ihe dị iche site na nchịkọta yiri ya emgo bụ mbọ iji chekwaa ụdị njikwa ebe nchekwa izizi Go site na iji mkpofu ahịhịa wee jiri LLVM mepụta koodu dị mma kama ịchịkọta ya na nnọchite C. Tinygo na-enyekwa ọbá akwụkwọ oge ọhụrụ nke na-arụ ọrụ nhazi oge, usoro nkesa ebe nchekwa na ndị na-eji eriri emebere maka sistemụ kọmpat. Ụfọdụ ngwungwu, dị ka ịmekọrịta na ịtụgharị uche, ka emegharịala dabere na oge ọhụụ ọhụrụ.

    N'ime mgbanwe na ntọhapụ 0.7 bụ mmejuputa iwu "tinygo test", inye nkwado nchịkọta mkpofu maka ọtụtụ mbadamba ebumnuche (dabere na ARM Cortex-M) na WebAssembly, nkwado maka bọọdụ HiFive1 rev B dabere na RISC- V architecture na osisi Arduino nano33,
    nkwado asụsụ emelitere (nkwado maka ubi bit site na iji getters na setters, nkwado maka ihe owuwu na-amaghị aha).

    isi: opennet.ru

  • Tinye a comment