منصوبے کے بارے میں

Vult ایک سادہ، طاقتور زبان ہے جو اعلیٰ کارکردگی والے الگورتھم پروگرام کرنے کے لیے استعمال ہوتی ہے جو چھوٹے مائیکرو پروسیسرز یا مائیکرو کنٹرولرز پر چل سکتے ہیں۔ یہ خاص طور پر ڈیجیٹل سگنل پروسیسنگ (DSP) کے کاموں جیسے آڈیو ایفیکٹس اور سنتھیسائزرز کے لیے بنائی گئی ہے۔ Vult کمپائلر ایک ٹرانس کمپائلر ہے: یہ Vult سورس کو لے کر سادہ C/C++ جاری کرتا ہے جسے کسی بھی پلیٹ فارم پر C/C++ کمپائلر کے ساتھ بنایا جا سکتا ہے، مثلاً Arduino یا Teensy بورڈز جو فکسڈ پوائنٹ ریاضی استعمال کرتے ہیں۔ یہ براؤزر میں براہ راست چلانے کے لیے JavaScript بھی جنریٹ کر سکتا ہے، یا Pure Data ایکسٹرنلز کے طور پر کمپائل کرنے کے لیے موزوں C/C++ بھی۔ README میں بیان کردہ اہم صلاحیتیں: - کمانڈ لائن کمپائلر `vultc` جو `.h`/`.cpp` آؤٹ پٹ پیدا کرتا ہے، لنکنگ کے لیے رن ٹائم فائلیں `runtime/vultin.h` اور `runtime/vultin.cpp` درکار ہیں۔ - فلوٹنگ پوائنٹ یا فکسڈ پوائنٹ ریاضی (`-real fixed`، q16 فارمیٹ: 16 انٹیجر بٹس، 16 فریکشنل بٹس)، جو FPU کے بغیر پروسیسرز جیسے AVR Arduinos، Teensy 3.2 اور Raspberry Pi Pico پر مفید ہے۔ - اہداف کے لیے ٹیمپلیٹس بشمول Teensy Audio Library اور Pure Data ایکسٹرنلز؛ مثال کے ریپوزٹریز میں PicoADK، WebAudio، Pure Data اور Teensy Audio شامل ہیں۔ - زبان کی خصوصیات جیسے فنکشنز جو مکمل پروسیسنگ یونٹس کا کردار ادا کرتے ہیں، فی انسٹنس `mem` اسٹیٹ ویری ایبلز، کمپائل ٹائم لک اپ ٹیبلز (`@[table(...)]`) اور واو فائلوں کو انٹرپولیشن کے ساتھ یا اس کے بغیر ایمبیڈ کرنا۔ - ڈسٹری بیوشن کے اختیارات: نیٹو ایگزیکیوٹیبلز، npm سے انسٹال شدہ `vultc` (نیٹو سے تقریباً 4 گنا سست بتایا گیا)، ایک node.js لائبریری (`vultlib`)، اور براؤزر میں ایمبیڈ شدہ کمپائلر اسکرپٹ۔ - ایڈیٹر سپورٹ بذریعہ Sublime Text سنٹیکس فائل اور Visual Studio Code ایکسٹینشن۔ - سورس سے OCaml/Opam، `make`، `make jscompiler` اور `make test` کے ساتھ بلڈ کرنا۔ README میں بتایا گیا ہے کہ Vult VCV Rack اور Vult Eurorack ماڈیولز کے لیے DSP کوڈ Vult زبان میں لکھا گیا ہے۔ ڈاکیومنٹیشن، ایک ٹیوٹوریل، زبان کا حوالہ اور کمانڈ لائن آپشنز پروجیکٹ سائٹ اور ویکی پر دستیاب ہیں۔