အမျိုးမျိုးသော ပစ်မှတ်ပလက်ဖောင်းများအတွက် စုစည်းမှုကို LLVM သုံးပြီး လုပ်ဆောင်ပြီး Go ပရောဂျက်မှ ပင်မကိရိယာအစုံတွင် အသုံးပြုသည့် စာကြည့်တိုက်များကို ဘာသာစကားကို ပံ့ပိုးရန်အတွက် အသုံးပြုပါသည်။ စုစည်းထားသော ပရိုဂရမ်ကို မိုက်ခရိုကွန်ထရိုလာများပေါ်တွင် တိုက်ရိုက်လုပ်ဆောင်နိုင်ပြီး Go အား အလိုအလျောက်စနစ် script များရေးသားရန်အတွက် ဘာသာစကားအဖြစ် အသုံးပြုနိုင်သည်။
ပရောဂျက်အသစ်ဖန်တီးရခြင်း၏ စေ့ဆော်မှုသည် ကျစ်ကျစ်လျစ်လျစ်သော စက်ပစ္စည်းများတွင် ရင်းနှီးသော Go ဘာသာစကားကို အသုံးပြုလိုခြင်းဖြစ်သည် - developer များသည် microcontrollers အတွက် Python ဗားရှင်းရှိပါက၊ Go ဘာသာစကားအတွက် အလားတူတစ်ခုကို မဖန်တီးရခြင်းဖြစ်သည်ဟု ဆော့ဖ်ဝဲအင်ဂျင်နီယာများက အကြောင်းပြချက်ပေးသည်။ သွားတော့
၎င်း၏လက်ရှိပုံစံတွင်၊ Adafruit၊ Arduino၊ BBC micro:bit၊ ST Micro၊ Digispark၊ Nordic Semiconductor၊ Makerdiary နှင့် Phytec တို့မှ ဘုတ်များအပါအဝင် မိုက်ခရိုကွန်ထရိုလာ ၁၅ ခုကို ပံ့ပိုးထားသည်။ ပရိုဂရမ်များကို WebAssembly ဖော်မတ်နှင့် Linux အတွက် လုပ်ဆောင်နိုင်သော ဖိုင်များအဖြစ် ဘရောက်ဆာတစ်ခုတွင်လည်း စုစည်းနိုင်သည်။ ESP15/ESP8266 ထိန်းချုပ်ကိရိယာများကို ပံ့ပိုးပေးသည်။
ပရောဂျက်၏ အဓိကပန်းတိုင်များ-
Multi-core စနစ်များအတွက် ပံ့ပိုးမှုသည် အဓိက ပန်းတိုင်များထဲတွင် မဟုတ်ဘဲ၊
ကော်ရိုတင်းအများအပြားကို ထိရောက်စွာ လွှင့်တင်ခြင်း (coroutines ကိုယ်တိုင်က အပြည့်အဝ ပံ့ပိုးထားသည်)၊ အကိုးအကား compiler gc ၏ စွမ်းဆောင်ရည်အဆင့် အောင်မြင်မှု (ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းကို LLVM တွင်ထားခဲ့ပြီး အချို့သော application များတွင် Tinygo သည် gc ထက် ပိုမြန်နိုင်သည်) နှင့် ပြီးမြောက်ပါသည်။
အလားတူ compiler မှ အဓိက ကွာခြားချက်
ထုတ်ဝေမှု 0.7 တွင် အပြောင်းအလဲများထဲတွင် RISC-ကိုအခြေခံ၍ HiFive1 rev B ဘုတ်အဖွဲ့အတွက် ပံ့ပိုးမှုဖြစ်သော ပစ်မှတ်ဘုတ်အများစုအတွက် အမှိုက်စုဆောင်းခြင်း ပံ့ပိုးမှု ပံ့ပိုးပေးမှု နှင့် WebAssembly၊ V architecture နှင့် Arduino nano33 board ၊
တိုးတက်သော ဘာသာစကားပံ့ပိုးမှု ( getters နှင့် setters များကို အသုံးပြု၍ bit နယ်ပယ်များအတွက် ပံ့ပိုးမှု၊ အမည်မသိ ဖွဲ့စည်းပုံများအတွက် ပံ့ပိုးမှု)။
source: opennet.ru