نم پروگرامنگ زبان کا نیا ورژن 0.20

واقعہ پیش آیا سسٹم پروگرامنگ لینگویج ریلیز نیم 0.20.0. زبان جامد ٹائپنگ کا استعمال کرتی ہے اور اسے پاسکل، C++، Python، اور Lisp کو ذہن میں رکھتے ہوئے بنایا گیا ہے۔ نم سورس کوڈ کو C، C++، یا JavaScript کی نمائندگی میں مرتب کیا گیا ہے۔ اس کے بعد، نتیجے میں آنے والا C/C++ کوڈ کسی بھی دستیاب کمپائلر (کلنگ، جی سی سی، آئی سی سی، ویژول سی++) کا استعمال کرتے ہوئے ایک قابل عمل فائل میں مرتب کیا جاتا ہے، جو آپ کو C کے قریب کارکردگی حاصل کرنے کی اجازت دیتا ہے، اگر آپ چلانے کی لاگت کو مدنظر نہیں رکھتے ہیں۔ کچرا جمع کرنے والا. Python کی طرح، Nim انڈینٹیشن کو بلاک الگ کرنے والوں کے طور پر استعمال کرتا ہے۔ میٹا پروگرامنگ ٹولز اور ڈومین مخصوص زبانیں (DSLs) بنانے کی صلاحیتیں معاون ہیں۔ پروجیکٹ کوڈ فراہم کی MIT لائسنس کے تحت.

نم 0.20 کی ریلیز کو پہلی مستحکم 1.0 ریلیز کے لیے ریلیز امیدوار کے طور پر دیکھا جا سکتا ہے، جس میں زبان کی حالت کا ارتکاب کرنے والی پہلی مستحکم شاخ کی تشکیل کے لیے متعدد مطابقت پذیر تبدیلیاں بھی شامل ہیں۔ ورژن 1.0 کو ایک مستحکم، طویل مدتی سپورٹ ریلیز کے طور پر سمجھا جاتا ہے جو زبان کے مستحکم حصے میں پسماندہ مطابقت کو برقرار رکھنے کی ضمانت دی جائے گی۔ الگ سے، کمپائلر میں ایک تجرباتی موڈ بھی دستیاب ہو گا، جس میں نئی ​​خصوصیات تیار کی جائیں گی جو پسماندہ مطابقت کو توڑ سکتی ہیں۔

نم 0.20 میں تجویز کردہ تبدیلیوں میں سے، ہم نمایاں کر سکتے ہیں:

  • "نہیں" اب ہمیشہ ایک غیر آپریٹر ہے، یعنی "assert(not a)" جیسے تاثرات اب غلط ہیں اور صرف "assert not a" کی اجازت ہے۔
  • کمپائل کے وقت انٹیجرز اور حقیقی نمبروں کو تبدیل کرنے کے لیے سخت جانچیں فعال ہیں، یعنی اظہار "const b = uint16(-1)" اب ایک غلطی کا نتیجہ ہوگا، کیونکہ -1 کو غیر دستخط شدہ عددی قسم میں تبدیل نہیں کیا جاسکتا۔
  • مستقل اور لوپ متغیرات کے لیے ٹیوپلز کی پیکنگ فراہم کی گئی ہے۔
    مثال کے طور پر، 'const (d, e) = (7, "eight")' اور "for (x, y) in f" جیسی اسائنمنٹس اب استعمال کی جا سکتی ہیں۔

  • ہیشز اور ٹیبلز کی ڈیفالٹ ابتداء فراہم کی گئی۔ مثال کے طور پر، "var s: HashSet[int]" کا اعلان کرنے کے بعد، آپ فوری طور پر "s.incl(5)" پر عمل درآمد کر سکتے ہیں، جو غلطی کا باعث بنتا تھا۔
  • "کیس" آپریٹر سے متعلق مسائل کے لیے غلطیوں کے معلوماتی مواد کو بہتر بنایا اور حد سے باہر سرنی انڈیکس؛
  • تکرار کے دوران ٹیبل کی لمبائی کو تبدیل کرنا منع ہے۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں