شائع ہوا Tinygo 0.32، LLVM پر مبنی گو کمپائلر

Tinygo 0.32 اب دستیاب ہے، ایسی ایپلی کیشنز کے لیے گو کمپائلر تیار کر رہا ہے جن کے لیے کمپیکٹ آؤٹ پٹ کوڈ اور کم وسائل کی کھپت کی ضرورت ہوتی ہے، جیسے مائیکرو کنٹرولرز اور کومپیکٹ سنگل پروسیسر سسٹم۔ مختلف ٹارگٹ پلیٹ فارمز کے لیے تالیف LLVM کا استعمال کرتے ہوئے لاگو کی جاتی ہے، اور گو پروجیکٹ کی مرکزی ٹول کٹ میں استعمال ہونے والی لائبریریوں کو زبان کی حمایت کے لیے استعمال کیا جاتا ہے۔ کوڈ BSD لائسنس کے تحت تقسیم کیا جاتا ہے۔

مرتب کردہ پروگرام کو براہ راست مائیکرو کنٹرولرز پر چلایا جا سکتا ہے، جس سے گو کو آٹومیشن اسکرپٹ لکھنے کے لیے بطور زبان استعمال کیا جا سکتا ہے۔ اس کی موجودہ شکل میں، مائیکرو کنٹرولرز کے سو سے زیادہ ماڈلز سپورٹ کیے جاتے ہیں، جن میں مختلف Adafruit، Arduino، BBC micro، ESP32، M5Stack، ST Micro، Digispark، Raspberry Pico، Nordic Semiconductor، SiFive HiFive1، STM32، Makerdiary اور Phytec بورڈز شامل ہیں۔ سینسرز اور منسلک بیرونی آلات کے ساتھ تعامل کے ساتھ ساتھ I2C، GPIO اور SPI جیسے انٹرفیس کو سپورٹ کرنے کے لیے خصوصی ڈرائیور فراہم کیے جاتے ہیں۔

Программы также могут быть собраны в формате WebAssembly (wasm/wasi) для запуска в браузере и в виде исполняемых файлов для Linux.

منصوبے کے اہم مقاصد:

  • کومپیکٹ ڈیوائسز پر آپ کے لیے واقف گو زبان کا سب سیٹ استعمال کرنے کی اہلیت۔ Go کا انتخاب Rust پر کیا گیا تھا کیونکہ یہ سیکھنا آسان ہے، کورٹین پر مبنی ہم آہنگی کے لیے تھریڈ سے آزاد تعاون فراہم کرتا ہے، اور ایک وسیع معیاری لائبریری پیش کرتا ہے (بیٹریاں شامل ہیں)۔
  • بہت کمپیکٹ قابل عمل فائلیں تیار کرنا۔
  • مائیکرو کنٹرولر بورڈز کے سب سے عام ماڈلز کو سپورٹ کرتا ہے۔
  • اسے ویب کے لیے استعمال کرنے اور WASI (WebAssembly سسٹم انٹرفیس) انٹرفیس کا استعمال کرتے ہوئے اسٹینڈ اکیلے WebAssembly ایپلی کیشنز بنانے کی صلاحیت جو آپریٹنگ سسٹم کی طرف سے فراہم کردہ فائلوں، ساکٹ اور دیگر فنکشنز کے ساتھ کام کرتی ہے۔
  • C فنکشنز کو کال کرتے وقت کم سے کم اوور ہیڈ کے ساتھ CGO سپورٹ۔
  • زیادہ تر معیاری پیکجوں کے لیے سپورٹ اور عام موجودہ کوڈ کو تبدیل کیے بغیر مرتب کرنے کی صلاحیت۔
  • ترک کیے گئے اسی طرح کے ایمگو کمپائلر کے برعکس، ٹائنیگو گو کے اصل کوڑے دان جمع کرنے والے میموری مینجمنٹ ماڈل کو برقرار رکھتا ہے اور C نمائندگی کو مرتب کرنے کے بجائے، موثر مشین کوڈ بنانے کے لیے LLVM کا استعمال کرتا ہے۔

نئے ورژن میں Pico W، Adafruit ESP32 Feather V2، M5 Paper، PCA10059، stm32 nucleol476rg اور Pimoroni Badger2040-W بورڈز اور چپس کے لیے تعاون شامل کیا گیا ہے۔ LLVM 18 کے ساتھ مطابقت کو یقینی بنایا گیا ہے UF2 فارمیٹ میں ڈرائیو کے ناموں میں خالی جگہوں کو استعمال کرنے کی صلاحیت کو لاگو کیا گیا ہے۔ esp32 پلیٹ فارم کے لیے I2C بس سپورٹ شامل کر دی گئی ہے۔ WebAssembly سپورٹ کو بڑھا دیا گیا ہے۔

ماخذ: opennet.ru

DDoS تحفظ، VPS VDS سرورز والی سائٹوں کے لیے قابل اعتماد ہوسٹنگ خریدیں۔ DDoS تحفظ، VPS VDS سرورز کے ساتھ قابل اعتماد ویب سائٹ ہوسٹنگ خریدیں۔ ProHoster