Full BASIC
مکمل بنیادی، جسے بعض اوقات معیاری بنیادی یا اے این ایس آئی بنیادی کہا جاتا ہے، ایک بین الاقوامی معیار ہے جو بنیادی پروگرامنگ زبان کی ایک بولی کی وضاحت کرتا ہے۔ اسے امریکن نیشنل اسٹینڈرڈز انسٹی ٹیوٹ (اے این ایس آئی) X3.60 گروپ نے یورپی ای سی ایم اے کے ساتھ شراکت میں تیار کیا تھا۔ یہ بہت سی خصوصیات کے ساتھ بیسک کے ایک جدید ورژن کی وضاحت کرتا ہے جس میں اسٹرکچرڈ پروگرامنگ، میٹرکس ریاضی، فائل ہینڈلنگ کے لیے ان پٹ/آؤٹ پٹ، اور بہت سے دوسرے آپشن شامل ہیں۔ اے این ایس آئی کی بنیادی معیاری کاری ایک دو مراحل پر مشتمل عمل تھا۔ پہلا، جو 1974 میں شروع ہونے والے منیمل بیسک کے طور پر انجام دیا گیا، اصل ڈارٹماؤتھ بیسک زبان کی واضح طور پر وضاحت اور معیاری بنانے کی کوشش تھی تاکہ اسے مختلف پلیٹ فارمز پر صحیح طریقے سے نافذ کیا جا سکے۔ 1977 کے آخر میں اس کی ریلیز کے بعد، توجہ فل بیسک کی طرف مبذول ہوئی جو ڈارٹماؤتھ کالج میں تیار کیے جانے والے زیادہ طاقتور اسٹرکچرڈ بیسک پر مبنی ہوگی۔ نظام کی پیچیدگی اور اسٹینڈرڈ کمیٹی کے اراکین کی طرف سے فروغ دیے گئے بہت سے اضافے کی وجہ سے کوشش میں کمی آئی اور پہلا مسودہ معیار چار سال دیر سے 1986 تک تیار نہیں تھا۔ اس معیار کی توثیق 26 جون 1986 کو ای سی ایم اے-116 اور جنوری 1987 کو اے این ایس آئی X3.113-1987 کے طور پر کی گئی۔ اسے مکمل طور پر نظر انداز کر دیا گیا تھا ؛ مائیکرو کمپیوٹر انقلاب اس وقت پیش آیا تھا جب تفصیلات پر بحث ہو رہی تھی، اور 1980 کی دہائی کے اوائل تک لاکھوں گھریلو کمپیوٹرز پر چلنے والا مائیکروسافٹ بیسک پہلے ہی آ چکا تھا اور چلا گیا تھا۔ عمل کو آگے بڑھتے ہوئے دیکھتے ہوئے، ڈارٹماؤتھ کے شرکاء معیار کے کچھ حصوں پر مبنی ٹرو بیسک تیار کرنے کے لیے روانہ ہو گئے، لیکن اس کا بہت کم فائدہ ہوا۔ مائیکروسافٹ جیسے ڈی فیکٹو معیارات نے مارکیٹ پر غلبہ حاصل کیا اور مائیکروسافٹ ویژول بیسک جیسی نئی زبانوں کی بنیاد بنائی جس میں اسی طرح کے تصورات کو شامل کیا گیا۔ تاریخ کم سے کم بنیادی 1964 میں ڈارٹماؤتھ بیسک کے تعارف نے کمپیوٹر کے میدان میں ابھرتے ہوئے متعدد تصورات کو یکجا کیا، جس میں صارف کے ساتھ ٹائم شیئرنگ اور براہ راست بات چیت شامل ہے، جسے اس وقت "بات چیت کے انٹرفیس" کے طور پر جانا جاتا تھا۔ جنرل الیکٹرک، جس نے GE 235 مین فریم کمپیوٹر فراہم کیا جس پر یہ چلتا تھا، نے ایک سروس بیورو شروع کرنے کے لیے ڈارٹماؤتھ کے سسٹم کا ایک ترمیم شدہ ورژن استعمال کیا جو بالآخر GEnie آن لائن سروس میں تبدیل ہو گیا۔ بہت سی دوسری کمپنیاں، جو ان میں قابل ذکر ہیں، ٹائم شیئر اور کمپیو سرو نے ڈارٹماؤتھ ماڈل کی پیروی کرتے ہوئے فوری طور پر اپنی میزبانی کی بنیادی خدمات متعارف کروائیں۔ 1968 میں، ہیولیٹ پیکارڈ (ایچ پی) نے ایچ پی 2000 سیریز کے منی کمپیوٹرز متعارف کروائے، جنہوں نے ریک ماؤنٹ سسٹم میں پہلے کے مین فریم سسٹم کی وہی خصوصیات پیش کیں جنہیں تقریبا 100,000 ڈالر میں مکمل شکل میں ترتیب دیا جا سکتا تھا۔ ان کے ایچ پی ٹائم شیئرڈ بیسک میں ڈارٹماؤتھ سے کئی اختلافات تھے، اور انہیں جلد ہی ڈیٹا جنرل جیسے دوسرے چھوٹے دکانداروں نے نقل کیا۔ ایک ہولڈ آؤٹ ڈیجیٹل ایکوپمنٹ کارپوریشن (ڈی ای سی) تھا، جس نے 1972 تک اپنے ڈیزائن کا بیسک متعارف نہیں کرایا تھا۔ یہ ورژن، بیسک پلس یا تو ایچ پی یا ڈارٹماؤتھ بولیوں سے مختلف تھا۔ 1970 کی دہائی کے اوائل تک بازار میں تین بڑی بولیاں اور درجنوں معمولی تغیرات استعمال کیے جا رہے تھے۔ جنوری 1974 میں ایک واحد معیاری بنیادی کی وضاحت کے لیے اے این ایس آئی کی چھتری کے تحت ایک نیا گروپ تشکیل دیا گیا۔ ڈارٹماؤتھ ٹیم نے گروپ کا ایک بنیادی حصہ تشکیل دیا۔ ڈارٹماؤتھ بیسک کے ایک بہت توسیع شدہ ورژن پر کام کر رہا تھا جسے اسٹرکچرڈ بیسک (ایس بی ایس آئی سی) کہا جاتا ہے جو اے این ایس آئی کی بنیاد بن گیا۔ اس وقت، چند دیگر بولیوں نے اس کی بہت سی نئی خصوصیات کی حمایت کی۔ گروپ نے فیصلہ کیا کہ ایس بی اے ایس آئی سی پر مبنی ایک مکمل معیار پر اتفاق کرنے میں کچھ وقت لگے گا، اس لیے اے این ایس آئی بیسک کی کوشش کو دو سنگ میل میں تقسیم کیا گیا۔ پہلا، کم از کم بنیادی، ایک ایسا معیار تیار کرے گا جس میں صرف بنیادی خصوصیات شامل ہوں گی جو کسی بھی عمل درآمد کے لیے ضروری ہوں گی۔ یہاں تک کہ ڈارٹماؤتھ کی طویل مدتی خصوصیات جیسے میٹرکس ریاضی کو بھی چھوڑ دیا جائے گا۔ کم از کم بنیادی معیار کا مسودہ جنوری 1976 میں جاری کیا گیا، حتمی مسودہ جولائی 1977 میں جاری کیا گیا، اور اسی دسمبر میں اس کی توثیق کی گئی۔ ڈارٹماؤتھ کالج کے ایک طبیعیات دان آرتھر لوہرمین، جو بیسک کے حامی اور اے این ایس آئی گروپ کا حصہ تھے، نے بعد میں کہا: "ایکس 3 جے 2 کے ابتدائی چند سال اصل 1964 کے ڈارٹماؤتھ بیسک کی مقدار کو معیاری بنانے میں گزارے گئے (پس منظر میں، کچھ کہہ سکتے ہیں کہ 'ضائع')۔ منیمل بیسک ایک حقیقی زبان سے زیادہ کھلونا تھا۔ " مکمل بنیادی گروپ نے پھر اپنی توجہ مکمل بنیادی کی طرف موڑ دی۔ اس وقت تک مائیکرو کمپیوٹر انقلاب مکمل پرواز میں تھا، اور مائیکروسافٹ بیسک یا اسی طرح کی بیسک چلانے والی لاکھوں مشینیں مارکیٹ میں داخل ہو رہی تھیں۔ اس کے باوجود، شرکاء میں سے کوئی بھی مائیکرو کمپیوٹر فروش یا سپلائر نہیں تھا۔ اس کے بجائے، شرکاء مین فریم وینڈرز جیسے آئی بی ایم، کنٹرول ڈیٹا اور جنرل الیکٹرک، منی کمپیوٹر وینڈرز جیسے ڈیجیٹل ایکوپمنٹ کارپوریشن (ڈی ای سی)، ڈیٹا جنرل اور وانگ لیبارٹریز، اور دیگر بہت بڑی کمپنیاں جیسے 3 ایم، امریکن ایکسپریس اور کوڈیک رہے۔ یہ کوشش فوری طور پر دوسرے نظام کے اثر کے خلاف ہو گئی کیونکہ ہر رکن نے "لازمی" خصوصیات کی اپنی فہرست شامل کرنا شروع کر دی۔ کچھ لوگ چاہتے تھے کہ یہ زبان چھوٹی مشینوں پر چلنے والے تعلیمی استعمال کی روایت کو جاری رکھے اور صرف ابتدائی فائل سپورٹ اور اسی طرح کی خصوصیات کے ساتھ ایک سادہ زبان کی خواہش رکھتے تھے۔ دوسرے مین فریم صارفین تھے جو بہتر سٹرنگ ہیرا پھیری کی پیشکش کرتے ہوئے کوبول یا فورٹرن جیسی زبانوں کے ساتھ مقابلہ کرنے کے لیے لوڈ ایبل ماڈیولر پروگراموں اور دیگر وسیع تر پروگرامنگ خصوصیات کی حمایت کرنا چاہتے تھے۔ تیسرا گروپ بنیادی طور پر کاروباری ایپلی کیشنز میں دلچسپی رکھتا تھا، خاص طور پر یورپی صارفین جہاں بیسک ایک بنیادی کاروباری زبان بن چکی تھی، اور انہوں نے اس نظام میں وسیع فائل ہینڈلنگ اور اعشاریہ ریاضی شامل کرنے کا مطالبہ کیا جو گول کرنے کے مسائل سے دوچار نہیں تھا۔ جان جی کینی اور تھامس ای کرٹز، بیسک کے اصل ڈیزائنرز اور اے این ایس آئی گروپ کے ممبران، اس عمل پر تنقید کر رہے تھے۔ 1982 کے ایک مضمون میں کرٹز نے لکھا کہ کس طرح بظاہر چھوٹے مسائل بھی بڑے تنازعات میں بدل گئے تھے۔ انہوں نے بیان کی مثال استعمال کی۔ جب صفوں کو پہلی بار بیسک میں شامل کیا گیا تو وہ انڈیکس 1 سے شروع ہوئے، جس نے تین سلاٹ، 1، 2 اور 3 کے ساتھ ایک صف بنائی۔ کچھ معاملات میں، انڈیکس 0 زیادہ قدرتی ہوتا ہے، لہذا اسے ڈارٹماؤتھ کوڈ کے بعد کے ورژن میں شامل کیا گیا تھا تاکہ اسی تعریف میں چار سلاٹ ہوں، 0 سے 3۔ منیمل کے دوران، اس بارے میں مسلسل بحث ہوتی رہی کہ ڈیفالٹ بیس کیا ہونا چاہیے، اور آخر کار 0 کا انتخاب کیا گیا۔ پانچ سال بعد، مکمل کوششوں کے دوران، یہ فیصلہ کیا گیا کہ صف نئے نحو کا استعمال کرتے ہوئے کسی بھی نچلی حد کی وضاحت کر سکتی ہیں۔ اس سے ڈیمانڈ ختم ہو گیا اور ڈیفالٹ کو دوبارہ 1 میں تبدیل کرنے کا فیصلہ کیا گیا۔ ابتدائی طور پر، X3.60 گروپ پہلی تکنیکی جائزے کی کاپی کے لیے 1982 کے موسم گرما کی تاریخ کو نشانہ بنا رہا تھا، جسے موسم خزاں میں اے این ایس آئی ایکس 3 کمیٹی کو بھیجا جائے گا۔ اس مدت کے دوران مجوزہ معیار بھیجا جائے گا، اور عوام کے تبصرے قبول کیے جائیں گے۔ حتمی مسودہ اس سال توثیق کے لیے 1983 میں ایکس 3 کو واپس بھیجا جائے گا۔ یہ کافی پر امید ثابت ہوا۔ پہلا مسودہ جنوری 1985 تک جاری نہیں کیا گیا تھا اور حتمی مسودہ 1986 میں جنوری 1987 میں توثیق کے لیے جاری کیا گیا تھا۔ اس وقت کے دوران، معیار اتنا بڑا ہو گیا کہ اسے بالآخر ایک بنیادی ماڈیول اور پانچ اختیاری ایڈ آن میں تقسیم کر دیا گیا، جس میں پیچیدہ فائل ہینڈلنگ، ریئل ٹائم کمپیوٹنگ سپورٹ، فکسڈ اعشاریہ ریاضی، اختیاری ایڈیٹنگ کمانڈز اور یہاں تک کہ ایک پلیٹ فارم سے آزاد گرافکس ماڈیول بھی شامل تھا۔ نتائج کو عوامی تبصرے کی مدت کے دوران تنقید کا نشانہ بنایا گیا۔ ایک جائزہ لینے والے نے نوٹ کیا کہ یہ اتنا بڑا ہو گیا ہے کہ "اس کے نتیجے میں بننے والی زبان پیچیدگی میں کسی بھی موجودہ پروگرامنگ زبان کا مقابلہ کرتی ہے" اور یہ کہ "پورے معیار کے مطابق ہونے کا موازنہ اب تک کے سب سے بڑے مرتب کرنے والے منصوبوں سے ہوگا"۔ مثال کے طور پر، یہ بیان کرتا ہے کہ کس طرح ذیلی روٹین کو بیان کرنے کے پانچ سے کم مختلف طریقے نہیں ہیں، تین سٹرنگ کی زیادہ سے زیادہ لمبائی کی وضاحت کرنے کے لیے اور صف کی وضاحت کرنے کے دو طریقے ہیں۔ صف بندی کے مسئلے کا حوالہ دیتے ہوئے، یہ نوٹ کیا گیا ہے کہ کمیٹی نے اس بات پر اتفاق کیا کہ اپنایا گیا حل "ناقابل برداشت" تھا اور اسے "بعد میں" ٹھیک کرنے کا منصوبہ بنایا۔ اس بات کا کوئی ثبوت نہیں ہے کہ شرکاء میں سے کسی نے بھی معیار کے جاری ہونے کے بعد اصل میں ایک مطابقت پذیر ورژن بنایا تھا اور جاری کوشش کا کوئی بھی ذکر فوری طور پر غائب ہو جاتا ہے۔ 1987 سے، معیار کا صرف یہ ذکر ہے کہ یہ موجود ہے اور یہ کہ ٹرو بیسک نے اس کی کچھ خصوصیات کو گھیر لیا ہے۔ مزید برآں، لاکھوں مائکرو اس وقت تک ایم ایس کے ڈیفیکٹو معیار کے کچھ تغیرات کو چلا رہے ہیں، نئے اے این ایس آئی معیار کو غیر معیاری حل کے طور پر دیکھا گیا۔ مائیکرو پلیٹ فارمز پر بیسک کی زیادہ تر اصل کامیابی یہ تھی کہ اس نے پروگراموں کو طباعت شدہ سورس کوڈ سے ٹائپ کرنے کی اجازت دی، لیکن 1980 کی دہائی کے وسط تک اس کی جگہ شنک ریپ ایپلی کیشنز نے لے لی تھی اور تقسیم کے نظام کے طور پر بیسک کی ضرورت ختم ہو گئی تھی۔ بڑے نظاموں کی طرف، تدریسی زبان کے طور پر اصل استعمال کی جگہ تیزی سے پاسکل لے رہا تھا، کیونکہ بنیادی مسائل، جیسے انٹرایکٹوٹی اور آن لائن ایڈیٹنگ، اب زیادہ تر نظاموں میں دستیاب تھے۔ حقیقی بنیادی معیارات کا عمل اتنا سست تھا کہ اسٹرکچرڈ بیسک کے مصنف نے بھی آخر کار اسے ترک کر دیا۔ اسٹیفن گارلینڈ سے کہا گیا کہ وہ ہائی اسکول کے طلباء کے لیے کالج بورڈ ٹیسٹوں کا ایک سلسلہ تیار کریں، اور اس کے بجائے انہیں پاسکل میں لکھا۔ یہ کسی حد تک متنازعہ تھا کیونکہ وسیع پیمانے پر استعمال ہونے والے بہت سے کمپیوٹرز، جیسے کموڈور 64 اور ٹی آر ایس-80 میں پاسکل کا مکمل نفاذ نہیں تھا۔ لوہرمین نے اس کوشش پر تنقید کرتے ہوئے ایک زیادہ عمومی کورس تجویز کیا جو زیادہ طلباء پر لاگو ہوگا۔ اے این ایس آئی گروپ میں ڈارٹماؤتھ کے شرکاء کے لیے یہ واضح ہو گیا کہ اس کوشش کو کسی معقول مدت میں مکمل ہونے کی کوئی امید نہیں تھی۔ انہوں نے کوشش چھوڑ دی اور زبان کے اپنے ورژن کو ٹرو بیسک کے طور پر مارکیٹ میں لانے کے لیے ایک نئی کمپنی شروع کی۔ سچے بنیادی نے بنیادی معیار کی بہت سی خصوصیات کو یکجا کیا لیکن اپنی متعدد تبدیلیاں بھی کیں۔ سب سے زیادہ قابل ذکر یہ تھا کہ لائن نمبرنگ اب اختیاری تھی۔ زبان کو خوب پذیرائی نہیں ملی، بہت سے جائزوں میں فیچر بلوٹ کے بارے میں وہی خدشات کا اظہار کیا گیا جو فل بیسک معیار کے بارے میں اٹھائے گئے تھے۔ جیری پورنیل نے اسے "پاگل پن" قرار دیا اور جان ڈیوورک نے اسے "افسوسناک" اور "ناکامی کے لیے برباد" قرار دیتے ہوئے مسترد کر دیا۔ بیسک کے پچھلے ورژن کی طرح، فل بیسک کو لائن ایڈیٹر کے ماحول میں کام کرنے کے لیے ڈیزائن کیا گیا تھا اور اس طرح لائن نمبروں کا استعمال انفرادی یا ترمیم شدہ یا ہٹائی جانے والی لائنوں کی حدود کی نشاندہی کرنے کے لیے کیا جاتا ہے۔ لائن نمبر 1 سے 50,000 تک ہو سکتے ہیں، اس کے برعکس کم از کم جو کہ 0 سے 9999 تک تھا۔ اس کا مطلب یہ تھا کہ لائن 0 استعمال کرنے والے درست کم از کم پروگرام فل میں غلط تھے۔ منطقی لکیریں کم از کم 132 حروف لمبی ہوتی تھیں۔ منطقی لائنوں کو "تسلسل کردار"، ایمپرسینڈ کا استعمال کرتے ہوئے کئی جسمانی لائنوں میں بڑھایا جا سکتا ہے۔ بدقسمتی سے، ایمپرسینڈ کو سٹرنگ کنکیٹینشن آپریٹر کے طور پر بھی منتخب کیا گیا تھا، جس نے تجزیہ کار کو پیچیدہ بنا دیا۔ اضافی ترمیم کے کمانڈوں میں شامل اور، جو اس وقت تک نئی مائیکرو کمپیوٹر بولیوں پر عام تھے۔ ایک نیا تصور تھا، جس نے لائنوں کی ایک رینج کو ایک نئی فائل میں کاپی کیا اور انہیں اصل پروگرام سے حذف کر دیا، جس سے انہیں ذیلی پروگرام میں نکالا جا سکے۔ اس کے بعد کمانڈ کا استعمال کرتے ہوئے ان کو طلب کیا جا سکتا ہے۔ اس میں ایک اختیاری کے بعد پیرامیٹرز کی فہرست بھی شامل ہو سکتی ہے، ایسی صورت میں اس سے توقع کی جاتی تھی کہ وہ پروگرام کے نام سے متغیر میں ایک قدر واپس کرے گا (نیچے "ساخت" دیکھیں)۔ بنیادی فعالیت کم سے کم یا دیگر بولیوں میں پائے جانے والے عام طور پر استعمال ہونے والے بہت سے مطلوبہ الفاظ باقی رہے ؛،، اور مثال کے طور پر۔ ان کمانڈوں میں بہت سی معمولی تبدیلیاں کی گئیں۔ مثال کے طور پر، ترمیم کے وقت مطلوبہ الفاظ کو اپر یا لور کیس، یا کسی بھی مرکب میں ٹائپ کیا جا سکتا ہے۔ جیسا کہ ماضی میں ہوتا تھا، وہ عام طور پر بڑے حروف میں دکھائے جاتے تھے، جبکہ ایک نیا رواج کثیر حروف متغیر ناموں کے لیے سانپ کے کیس کا استعمال کرنا تھا۔ ڈارٹماؤتھ بیسک نے ان لائن تبصروں کے لیے بیان متعارف کرایا اور دیگر بولیوں میں اس کی عالمی سطح پر حمایت کی گئی۔ بہت سی بولیوں نے ایک مختصر شکل بھی شامل کی، جس میں عام طور پر واحد اقتباس کا استعمال کیا جاتا ہے، جیسا کہ مائیکروسافٹ بیسک میں دیکھا گیا ہے۔ مکمل کے لیے، انہوں نے اس کردار کے لیے حیرت انگیز نشان کا انتخاب کیا، حالانکہ ایسا لگتا ہے کہ واحد اقتباس کا استعمال نہ کرنے کی کوئی وجہ نہیں ہے کیونکہ یہ دوسری صورت میں استعمال نہیں ہوتا ہے-مثال کے طور پر سٹرنگز واحد اقتباس کی حد بندی کی اجازت نہیں دیتے ہیں۔ ایک اور متنازعہ تبدیلی یہ تھی کہ تجزیہ کو آسان بنانے کے لیے اب تمام تفویض کے لیے مطلوبہ الفاظ کی ضرورت تھی، جبکہ ہر دوسری بولی میں اختیاری تھا۔ اس میں کم سے کم کوڈ شامل تھا، لہذا اس شارٹ کٹ کا استعمال کرنے والا کوئی بھی کم سے کم کوڈ فل کے ساتھ مطابقت نہیں رکھتا تھا۔ منیمال سے 23 مطلوبہ الفاظ اور 11 افعال کے نسبتا چھوٹے سیٹ کے اوپر، کل 176 مطلوبہ الفاظ (161 الگ الگ تصورات کی وضاحت)، 38 ریاضیاتی افعال اور 14 سٹرنگ افعال کے لیے، اگر تمام توسیعات شامل کی گئیں تو فل نے اپنے درجنوں کو شامل کیا۔ مطلوبہ الفاظ کی ایک سادہ فہرست، جو تین کالموں میں رکھی گئی ہے، معیاری دستاویز میں دو صفحات کو بھرتی ہے۔ ساخت مکمل اور کم سے کم کے درمیان بڑا فرق بلاک پر مبنی ساختہ پروگرامنگ تعمیرات کا اضافہ تھا۔ کم سے کم، اور زیادہ تر بنیادی ترجمانوں میں، پروگرام منطقی طور پر کوڈ کی آزاد لائنوں پر مشتمل تھا اور کوئی بھی لائن نمبر درج کرکے کسی بھی مقام پر عمل درآمد شروع کر سکتا تھا۔ اس اصول کی واحد رعایت لوپ تھی، جہاں FOR سے NEXT تک کی تمام لائنوں کو منطقی طور پر کوڈ کا واحد بلاک سمجھا جاتا تھا۔ ایف او آر بلاک میں یا اس سے باہر برانچ کرنے کے نتیجے میں عجیب سلوک ہوتا ہے، عام طور پر عمل درآمد پر منحصر ہوتا ہے لیکن عام طور پر کسی قسم کی غلطی جیسے "اگلے بغیر"۔ مکمل طور پر، FOR.NEXT بلاک میں برانچنگ کی اجازت نہیں ہے، اور نہ ہی بیان کا استعمال کیے بغیر برانچنگ کی اجازت ہے۔ عمل درآمدات کو اس طرح کے بیانات کی جانچ پڑتال کرنی چاہیے تھی اور انہیں اجازت نہیں دینی چاہیے تھی، مثال کے طور پر، ایسے معاملات تلاش کرنا جہاں کوڈ کو لوپ میں ایڈ کیا جائے۔ اس طرح کے کوڈ کی جانچ پڑتال ایک مترجم کے لیے مشکل ہے جو عام طور پر پروگرام کی لائن بہ لائن جانچ کرتا ہے۔ پروگرام میں دوسرے کوڈ سے بلاک میں شاخوں کی جانچ پڑتال کے لیے عام طور پر مرتب کی طرح پورے پروگرام کو تجزیہ کرنے کی ضرورت ہوتی ہے۔ مکمل طور پر، اضافی بلاک ڈھانچے فراہم کرنے کے لیے کئی موجودہ مطلوبہ الفاظ کو بڑھایا گیا، اور دیگر کو شامل کیا گیا۔ قابل ذکر ملٹی لائن تھی، جس نے شرط پوری ہونے یا ناکام ہونے کی صورت میں کوڈ کی متعدد لائنوں کو چلانے کی اجازت دی۔ فیصلہ ٹری بنانے کے لیے شامل کیا گیا تھا، جو پہلے چلانے کے لیے لائن کو منتخب کرنے کے لیے یا ایک سے زیادہ s کا استعمال کرتے ہوئے نافذ کیا جاتا۔ لوپس ویسے ہی رہے جیسے وہ منیمل میں تھے، لیکن ٹاپ ٹیسٹڈ اور باٹم ٹیسٹڈ اقسام کے ساتھ ایک نیا شامل کیا گیا۔ تمام لوپس کو اب اینڈ کمانڈز کا استعمال کرتے ہوئے محفوظ طریقے سے باہر نکالا جا سکتا ہے۔ بلاک ڈھانچوں میں ان تبدیلیوں کے اوپر، فل نے طریقہ کار، افعال اور پروگرام بلاکس کی وضاحت کے لیے مطلوبہ الفاظ بھی شامل کیے۔ مجموعی طور پر پروگرام اب اختیاری مطلوبہ الفاظ کے ساتھ کھولے جاتے تھے جس کے بعد پروگرام کا نام ہوتا تھا، اور پہلے کی طرح اس کے ساتھ ختم ہوتا تھا۔ معمولات کو استعمال کے ساتھ بنایا اور کال کیا جا سکتا ہے۔ ملٹی لائن فنکشنز کے ساتھ بنائے گئے تھے اور واپسی کی قسم کا اعلان نہیں کیا گیا تھا کیونکہ یہ نام کا حصہ تھا-سٹرنگ فنکشن کے نام ڈالر کے نشان کے ساتھ ختم ہوتے ہیں۔ واپسی کی قیمت ایک متغیر کو اسی نام سے ترتیب دے کر فراہم کی گئی تھی جیسے فنکشن، مثال کے طور پر، "ڈی او آئی ٹی" نامی فنکشن میں اس طرح کی لائن ہوگی۔ افعال دوسرے افعال اور خود کو کال کر سکتے ہیں، مطلب یہ ہے کہ زبان قدرتی طور پر تکراری تھی۔ فل نے مطلوبہ الفاظ کا استعمال کرتے ہوئے ون لائن فنکشن کی تعریفوں کے سابقہ انداز کو بھی برقرار رکھا، لیکن فنکشن کے نام کی ضرورت کو "ایف این" سے شروع کرنے کے لیے ہٹا دیا۔ مثلا۔ پچھلے بیسک میں دائرہ کار کا کوئی تصور نہیں تھا اور تمام متغیرات عالمی تھے۔ یہ بڑے ماڈیولر پروگراموں کی تعمیر کے لیے کافی نہیں ہے، کیونکہ کوڈ کا ایک حصہ عام متغیر ناموں کا استعمال کرتے ہوئے لکھا گیا ہو سکتا ہے اور اس متغیر کی قدر کو تبدیل کر سکتا ہے۔ چونکہ متغیر عالمی ہے، اس لیے جب یہ اصل کوڈ پر واپس آتا ہے تو یہ ترمیم شدہ قیمت کو برقرار رکھتا ہے۔ منظم پروگرامنگ کا ایک کلیدی تصور مقامی متغیر ہے، جو جامع پروگرام میں دوسرے مقامات پر اسی نام کے دیگر متغیرات سے اپنی قدر کو الگ رکھتا ہے۔ چونکہ بیسک کے پاس دائرہ کار کا تصور نہیں تھا، اس لیے بہت سے پروگرام عالمی رویے پر انحصار کرتے تھے اور ذیلی روٹین کے اندر اور باہر معلومات منتقل کرنے کے لیے متغیرات کا استعمال کرتے تھے۔ نئی زبان میں دونوں تصورات کی اجازت دینے کے لیے، فل بیسک نے کلیدی لفظ شامل کیا جسے کسی فنکشن یا سبروٹین میں شامل کیا جا سکتا ہے اور مقامی میں کسی بھی متغیر کو بنایا جا سکتا ہے۔ جیسا کہ بیسک پروگرام عام طور پر پروگرام کے سورس کوڈ کے آخر میں سبروٹینز رکھتے ہیں، مطلوبہ الفاظ کو فراہم کردہ فارورڈ ڈیکلیریشنز میں شامل کیا گیا تھا۔ ڈیٹا کی اقسام اور متغیرات مکمل بنیادی نے طویل متغیر نام متعارف کروائے، آخر کار ماضی کے واحد حرف یا حرف کے ہندسوں کے ناموں سے آزاد ہو گئے۔ اس نے 31 حروف پر نئی حد مقرر کی۔ اس تبدیلی کا ایک معمولی منفی پہلو یہ تھا کہ مطلوبہ الفاظ کے درمیان خالی جگہیں ہونی چاہئیں، جبکہ زیادہ تر ابتدائی ورژنوں نے خالی جگہوں کو چھوڑنے کی اجازت دی۔ اس کی وجہ یہ تھی کہ ایک حرفی ناموں کے ساتھ ایک لائن کو "FORS" کے طور پر تجزیہ کیا جا سکتا ہے، جو ممکنہ طور پر بنیادی کے دو حرفی قسم میں متغیر نہیں ہو سکتا۔ مکمل طور پر، اسے ٹائپ کرنا پڑے گا کیونکہ "FORS" ایک درست متغیر نام ہے۔ جیسا کہ پہلے کے بیسک میں ہوتا تھا، مکمل میں ڈیٹا کی اقسام کو متغیر نام پر لاحقہ کے ذریعے ظاہر کیا جاتا تھا۔ کم سے کم نے صرف عددی متغیرات رکھ کر اس مسئلے سے گریز کیا تھا، لیکن مثال کے طور پر، ڈالر کے نشان کا استعمال کرتے ہوئے، مکمل شامل تار بھی۔ فلوٹنگ پوائنٹ سسٹم کے ڈیفالٹ نفاذ کے لیے مکمل بنیادی اعشاریہ ریاضی کی ضرورت ہوتی ہے۔ چونکہ یہ ہارڈ ویئر میں عالمی سطح پر سپورٹ نہیں تھا، خاص طور پر منی اور مائکرو پر، اس میں یہ بھی شامل کیا گیا ہے جو اس بات کی نشاندہی کرتا ہے کہ ریاضی کو سسٹم کے ڈیفالٹ فلوٹنگ پوائنٹ کے نفاذ کا استعمال کرتے ہوئے انجام دیا جانا چاہیے، چاہے وہ کچھ بھی ہو۔ اسے بی سی ڈی موڈ میں واپس کیا جا سکتا ہے۔ اگر انسٹال ہو تو یہ فکسڈ پوائنٹ ریاضی کے آپشن کے علاوہ ہے۔ عددی اور سٹرنگ متغیرات بصورت دیگر دوسرے بیسک کی طرح کام کرتے تھے۔ ایک نیا اضافہ فکسڈ پوائنٹ ریاضی کی توسیع تھی، جس نے متغیرات کو مخصوص درستگی حاصل کرنے کی اجازت دی۔ اسے کمانڈ کے بعد ستارے کا استعمال کرتے ہوئے آن کیا گیا تھا اور مثال کے طور پر، ایک فارمیٹ سپیسیفائر تمام عددی متغیرات کو 8 ہندسوں کی درستگی اور دو اعشاریہ مقامات پر سیٹ کرے گا۔ اس طرح کے اعلامیے کو باقی پروگرام میں کسی بھی ریاضی کے کوڈ سے پہلے رکھا جانا چاہیے۔ مزید برآں، کسی بھی واحد متغیر کو انفرادی طور پر کچھ اس طرح کا استعمال کرتے ہوئے بیان کیا جا سکتا ہے۔ زیادہ تر بیسک نے کلیدی لفظ کا استعمال کرتے ہوئے صف متغیرات کی تعمیر کی حمایت کی، مثال کے طور پر، دو صفوں کی وضاحت کرتا ہے، واحد جہت A اور دو جہت (میٹرکس) B۔ فل بیسک میں، کسی بھی صف کی نچلی حد عام طور پر 1 ہوتی تھی، اس لیے اس صورت میں، متغیر اے کے پانچ "سلاٹ" ہوتے ہیں، جن کی تعداد 1 ہوتی ہے حالانکہ 5 ہوتی ہے۔ اس اعلامیے کے اوپر استعمال کرنے سے انڈیکس 0 پر ایک اور سلاٹ شامل ہو جائے گا۔ مثال کے طور پر، کلیدی لفظ کا استعمال کرتے ہوئے نچلی اور اوپری حدود کی براہ راست وضاحت کے لیے فل نے ایک نیا نظام بھی شامل کیا، جو ایک جہتی 101 سلاٹ صف بناتا ہے۔ معاملات کو مزید الجھن میں ڈالنے کے لیے، صفوں کو بنانے کے لیے بھی استعمال کیا جا سکتا ہے ؛ وہی جہتیں جن کے ساتھ آخری مثال بنائی جا سکتی ہے۔ ریاضی، منطق اور میٹرکس معاون ریاضی آپریٹرز کی فہرست میں وہ سب شامل تھے جو کم از کم،،، اور سے تھے۔ نیا فنکشن ایک انٹیجر ڈویژن کے بقیہ حصے کو واپس کرتا ہے۔ منطقی آپریٹرز کی فہرست کو بڑھایا گیا، اور اسے منیمل سے ہٹا دیا گیا اور اب دوبارہ شامل کیا گیا، اور موازنہ آپریٹرز کی متبادل شکلیں شامل کی گئیں، اور۔ بنیادی بلٹ ان افعال کی فہرست بیسک کے پچھلے ورژن سے ملتی جلتی رہی، بشمول عام مثالیں جیسے یا۔ ٹرگ فنکشنز کو شامل کرنے کے لیے بڑھایا گیا،،، اور۔ نئی فنکشن نے اصل اور دیئے گئے X، Y نقطہ کے درمیان کا زاویہ واپس کیا۔ بیسک عام طور پر ریڈیئنز میں زاویوں کا حساب لگاتا ہے، لیکن تمام پیرامیٹرز اور آؤٹ پٹ کو ڈگریوں میں تبدیل کرتا ہے، اور اس نظام نے اس فنکشن کو بے نقاب کیا جو ان تبادلوں میں اور دوسری جگہوں پر استعمال ہوتا تھا۔ ڈارٹماؤتھ بیسک نے اپنے ارتقاء میں نسبتا ابتدائی میٹرکس آپریشنز متعارف کروائے تھے، اور یہ فل کا حصہ تھے۔ یہ موجودہ ریاضی کے افعال کو اوور لوڈ کرتے ہیں، لہذا اگر بی پیرامیٹر ایک صف نہیں ہے تو کوئی صف کے مندرجات کو اسکیلر کے ذریعے استعمال کرکے یا ضرب دے کر دو صفوں کو ضرب دے سکتا ہے۔ یہ نظام کئی صرف صف کے افعال کو بھی شامل کرتا ہے، جس میں دوسروں کے درمیان او، ایرٹ اور ایرمینیٹ شامل ہیں۔ میٹرکس ریاضی کے اضافے کے لیے موجودہ مطلوبہ الفاظ جیسے اور میں ترمیم کی بھی ضرورت ہوتی ہے، جو صف کے پیرامیٹر کو پر کرنے کے لیے ضرورت کے مطابق متعدد عناصر کو آؤٹ پٹ یا ان پٹ کرتے ہیں۔ میٹرکس کو نئی حدود کی وضاحت کرکے a کے حصے کے طور پر دوبارہ طول و عرض کیا جا سکتا ہے، جیسے۔ نئے طول و عرض میں عناصر کی کل تعداد اصل کے برابر یا اس سے چھوٹی ہونی چاہیے، لہذا اس مثال میں اگر اصل تعریف تھی، تو ان پٹ ایک غلطی کا سبب بنے گا۔ سٹرنگز ڈارٹماؤتھ بیسک کے ابتدائی ورژن میں سٹرنگ متغیرات یا ہیرا پھیری شامل نہیں تھی، کسی پروگرام میں صرف سٹرنگز جیسے مستقل تھے۔ 1968 کے ورژن 4 میں، سٹرنگ متغیرات اور ان کو جوڑنے کے لیے ایک واحد طریقہ شامل کیا گیا، جس نے سٹرنگ کو حروف کی ASCII اقدار پر مشتمل صف میں اور اس سے تبدیل کیا۔ مثال کے طور پر، A میں اقدار کی ایک صف تیار کرے گا، جہاں A (0) 72 تھا، "H" کے لیے اعشاریہ ASCII ویلیو۔ اس سے سٹرنگ میں ہیرا پھیری کافی مشکل ہو گئی، مثال کے طور پر، "ہیلو، ورلڈ!" سے "ہیلو" نکالنا۔ "، کسی کو کرنا پڑے گا: 10 اے $=" ہیلو، ورلڈ! " 20 ڈم اے (25)، بی (5) 30 چینج اے $ٹو اے 40 فار آئی = 1 ٹو 5 50 بی (آئی) = اے (آئی) 60 اگلا آئی 70 چینج بی ٹو بی $بنیادی کی بہت سی بولیوں نے اس طرح کی پیچیدگی سے بچنے کے لیے زیادہ مفید سٹرنگ ہیرا پھیری کرنے کے اپنے طریقے شامل کیے تھے۔ فل بیسک کے لیے، کمیٹی نے ایچ پی کے ذریعے متعارف کرائے گئے تصور پر ایک تغیر کا انتخاب کیا، "سٹرنگ سلائسنگ"۔ یہ تصور سٹرنگ کو حروف کی ایک صف کے طور پر پیش کرتا ہے اور ایک صف جیسی تفصیلات کا استعمال کرتے ہوئے ان تک رسائی حاصل کر سکتا ہے جسے "سلائس" کہا جاتا ہے۔ مکمل میں "ہیلو، ورلڈ" سے "ہیلو" نکالنے کے لیے، کوئی بھی استعمال کرے گا۔ تصور سے ملتا جلتا ہے، لیکن یہ طریقہ ایسے نتائج پیدا کرتا ہے جو خود تار ہوتے ہیں، عددی اقدار نہیں، اور اس طرح کوئی "ہیلو" پیدا کر سکتا ہے۔ فل کے نقطہ نظر اور ایچ پی جیسے پچھلے طریقوں کے درمیان ایک اہم فرق یہ ہے کہ اس نے سلائنگ کے لیے ایک مختلف نحو کا استعمال کیا، جبکہ پہلے کے نظاموں میں صف نحو کا استعمال کیا جاتا تھا۔ مثال کے طور پر، HP میں، مساوی لکیر ہے۔ چونکہ یہ وہی نحو ہے جو صف تک رسائی کے طور پر ہے، HP (اور اسی طرح) عام طور پر سٹرنگ صفوں کی اجازت نہیں دیتا تھا، جبکہ اس کی اجازت مکمل میں تھی۔ اس نقطہ نظر کو ڈی ای سی کے منتخب کردہ حل، نئے تاروں کو واپس کرنے والے افعال کے استعمال، اور اس سے متصادم ہونا چاہئے۔ یہ وہ حل تھا جسے مائیکروسافٹ نے اٹھایا جب انہوں نے پی ڈی پی-10 پر اپنا بیسک لکھا۔ دونوں کے درمیان تبدیل کرنا غلطی کا شکار ہو سکتا ہے، اس کے مساوی انجام دینے کے لیے، فل استعمال کرے گا۔ ان پٹ/آؤٹ پٹ مکمل بنیادی کے لیے توجہ کا ایک اور شعبہ ان پٹ/آؤٹ پٹ (I/O) تھا۔ کم از کم بنیادی کا واحد I/O اور کمانڈز اور بیانات اور اس کا استعمال کرتے ہوئے ڈیٹا کو ہارڈ کوڈ کرنے کی صلاحیت تھی۔ تقریبا تمام عملی بولیوں کو شامل کیا گیا اور ایک "چینل" بنایا گیا جسے پھر اس مخصوص فائل یا ڈیوائس کا حوالہ دینے کے لیے استعمال کیا گیا۔ مثال کے طور پر اب ایک اختیاری، اس کے بعد ایک سٹرنگ، ایک کالون اور پھر ان پٹ متغیرات شامل ہیں۔ اس وقت تک تقریبا تمام بیسک میں لفظ کے بغیر ایک جیسی خصوصیت شامل تھی اور کالون کے بجائے موجودہ پرنٹ سیپریٹر سیمی کولن کا استعمال کرتے ہوئے، مثال کے طور پر ایم ایس بیسک میں وہی لائن ہوگی۔ اس کے اوپر، فل نے نئے اور کلیدی الفاظ کو بھی شامل کیا:، جو 30 سیکنڈ کے بعد بھی جاری رہے گا یہاں تک کہ اگر صارف کچھ بھی داخل نہیں کرتا ہے، اور اس میں لگنے والا وقت، ممکنہ طور پر 30 سیکنڈ، متغیر ٹی میں ڈال دے گا۔ گھڑی کی کمی والے سسٹمز کے لیے (جو اس وقت غیر معمولی نہیں تھا)، ٹی ہمیشہ-1 واپس کرے گا۔ آئی این جی کو اسی طرح اختیاری بیان کے ساتھ بڑھایا گیا تھا، جو پہلے ہی متعدد نفاذات پر ظاہر ہو چکا تھا۔ عام طور پر اعشاریہ مقامات کو نشان زد کرنے کے لیے نمبر کے نشانات، ستاروں اور فیصد کے نشانات کا استعمال کرتے ہوئے ایک فارمیٹ سٹرنگ کے بعد کیا جاتا تھا۔ فارمیٹ سٹرنگ کو سٹرنگ متغیر میں رکھا جا سکتا ہے اور پھر اس کا حوالہ دیا جا سکتا ہے، یا لائن نمبر کے ذریعے ایک اختیاری علیحدہ لائن کا حوالہ دیا جا سکتا ہے۔ پرنٹنگ ایریا سیٹ کرنے کے لیے فل نے نئی کمانڈز بھی شامل کیں، اور۔ ان مختلف ترتیبات (اور دیگر) کی موجودہ اقدار کو استعمال کرتے ہوئے واپس کیا جا سکتا ہے۔ مثال کے طور پر، اس کے بعد جے کو 30 پر سیٹ کریں گے۔ مثال کے طور پر، اور کے ساتھ مکمل معاون فائل آپریشنز اور ایک چینل نمبر جو نمبر کے نشان کے ساتھ پہلے سے لگا ہوا ہے۔ اس کے بعد ڈیٹا کو اور یا اور نئے کا استعمال کرتے ہوئے لکھا جا سکتا ہے۔ اضافی فائل ہینڈلنگ کمانڈز میں شامل اور، اور ان تمام کمانڈز میں متعدد اختیارات اور طریقے تھے۔ اس میں سے زیادہ تر مختلف قسم کے جسمانی آلات سے نکلا ہے جو 1970 کی دہائی کے آخر میں بھی عام تھے، مثال کے طور پر مقناطیسی ٹیپ تک صرف ترتیب وار رسائی حاصل کی جا سکتی تھی لہذا نئے معیار نے یا وغیرہ کے اختیارات پیش کیے۔ اختیارات کی فہرست اور ان کے تعاملات اور حدود معیار کے بہت سے صفحات کا احاطہ کرتی ہیں۔ مثال کے طور پر، کسی قسم کی فائل کا ہونا ممکن ہے، لیکن ٹائپ نہیں کرنا، جس کی ضرورت ہو۔ مستثنی ہینڈلنگ اور ڈیبگنگ اس دور کے بہت سے بیسک کی طرح، فل نے کمانڈ شامل کی جو پروگرام کے انجام دیتے ہی لائن نمبروں کو پرنٹ کرے گی۔ یہ لائن نمبروں کی پرنٹنگ کو کسی دوسرے ڈیوائس یا فائل پر بھی ری ڈائریکٹ کر سکتا ہے، جہاں #3 پہلے کھولا ہوا چینل تھا۔ اس میں اور متعلقہ بیان بھی شامل کیا گیا، جس میں سے مؤخر الذکر مستثنی ہوگا اگر ڈیبگنگ پہلے آن ہو چکی ہوتی۔ ڈیبگنگ کی حیثیت کسی خاص پروگرام تک محدود تھی، لہذا اسے مثال کے طور پر ایک پروگرام میں آن اور ذیلی پروگرام میں آف کیا جا سکتا تھا۔ مزید برآں، بلاک کی بنیاد پر فل نے حقیقی مستثنی ہینڈلرز کو شامل کیا۔ اس کو استعمال کرنے کے دو طریقے تھے، اگر مندرجہ ذیل کوڈ کے ساتھ شروع ہونے والے کوڈ بلاک کو بلاک کے طور پر انجام دیا گیا تھا اور اس کے اندر کوئی رعایت اس حصے پر چھلانگ لگانے کا سبب بنے گی، جو اس کی طرح کام کرتا ہے۔ اسے ایک علیحدہ سبروٹین نما بلاک کی وضاحت کرکے بھی استعمال کیا جا سکتا ہے جس کا استعمال کرتے ہوئے اسے نام سے پکارا جائے گا۔ کوڈ اس بات کی جانچ کر سکتا ہے کہ کون سی رعایت میٹا متغیرات کا استعمال کرتے ہوئے واقع ہوئی تھی یا جس میں سے کسی کو بھی اس کی ضرورت نہیں تھی۔ ایرر ہینڈلر سے باہر نکلا اور ایرر کی لائن پر واپس آگیا، جبکہ مین لائن کوڈ کے اندر استعمال کیا جا سکتا ہے تاکہ بلاکس کے اندر بھی غلطیوں کو نظر انداز کیا جا سکے۔ گرافکس تقریبا اسی وقت جب فل ڈیزائن کیا جا رہا تھا، گرافکس کرنل سسٹم، یا جی کے ایس کی وضاحت کے لیے ایک متوازی کوشش جاری تھی۔ یہ مکمل میں اختیاری ماڈیولز میں سے ایک کے طور پر پیش کیا گیا تھا۔ اس نے درجنوں خصوصی مطلوبہ الفاظ جیسے اور نحو کے ساتھ شامل کیے جو معیار کے دوسرے ماڈیولز سے میل نہیں کھاتے تھے۔ مثال کے طور پر، کمانڈ نے کلپنگ کو موجودہ ویو پورٹ پر اس طرح آن کیا کہ اس کی حدود سے باہر کھینچی گئی اشیاء نظر نہ آئیں۔ اس نے بولین کے بجائے سٹرنگ ویلیو لی۔ کئی عام تصویری ترمیم کے کمانڈ شامل کیے گئے،،، اور۔ چونکہ تصاویر اکثر عام عناصر سے بنائی جاتی ہیں، اس لیے فل نے نئے بلاک ڈھانچے کو شامل کیا، جو بصورت دیگر a سے ملتا جلتا ہے اور اس کے بجائے اس کے ساتھ استعمال کیا جاتا ہے۔ فرق یہ ہے کہ تصویر کے بلاک کے آؤٹ پٹ کو استعمال کرتے ہوئے ترمیم کے ساتھ تبدیل کیا جا سکتا ہے۔ مثال کے طور پر، اگر کوئی a کی وضاحت کرتا ہے جس سے ایک رداس کا دائرہ پیدا ہوتا ہے، تو ایک چھوٹا دائرہ کھینچا جا سکتا ہے اور اس کے ساتھ سائیڈ پر منتقل کیا جا سکتا ہے۔ ریئل ٹائم فل کے ریئل ٹائم ماڈیول نے کلیدی لفظ کے ذریعے "متوازی حصوں" کا تصور شامل کیا۔ یہ سبروٹینز (اور تصاویر) کی طرح نظر آتے تھے لیکن ان میں متعدد اضافی مطلوبہ الفاظ تھے جو ان کی دعا کو کنٹرول کرتے تھے۔ مثال کے طور پر، کوئی بھی کوڈ کی وضاحت کر سکتا ہے جو ایک کو جواب دے گا اور پھر کوڈ میں کہیں اور جاری کر کے اسے چلانے کا سبب بنے گا۔ پیغامات بندرگاہوں کے تصور کا استعمال کرتے ہوئے متعدد ہینڈلرز کو مدعو کر سکتے ہیں۔ اس نظام نے ان بلاکس اور اشیاء کو بیرونی کوڈ سے منسلک کرنے کی بھی اجازت دی جو ان پیغامات کو تخلیق کرے گا۔ مثال کے طور پر، کسی کے پاس ایسا کوڈ ہو سکتا ہے جو وقتا فوقتا ٹیکسٹ آؤٹ پٹ بنانے والے آلے پر انتظار کر رہا ہو، اور پھر نیا ٹیکسٹ دستیاب ہونے پر مناسب ہینڈلر کو خود بخود کال کیا جائے گا۔ چونکہ اس طرح کے آلات سے حاصل ہونے والا اصل ڈیٹا کثیر حصہ کا ہوتا ہے، نہ کہ سٹرنگ یا نمبر جیسی سادہ چیز، اس لیے ریئل ٹائم لائبریری نے ایس کی وضاحت کرنے کی صلاحیت کو بھی شامل کیا جسے پھر جوہری اکائی کے طور پر پڑھا یا لکھا جا سکتا ہے۔ اس کے بعد ان کو اینڈ کمانڈز کا استعمال کرتے ہوئے پڑھا اور لکھا جاتا تھا، یا اگر ڈیٹا تھا، تو دوسری صورت میں یکساں اور۔ اگرچہ بہت سے ریئل ٹائم پروگراموں کو صرف بیرونی واقعات کا جواب دینے والے نظام کے طور پر بنایا جا سکتا ہے، لیکن خود پروگرام کے لیے بھی ان واقعات کو وقتا فوقتا پوسٹ کرنا عام بات ہے۔ اس کے لیے، فل نے کمانڈ اور اس سے وابستہ کو شامل کیا جو ایک دی گئی (کئی سیکنڈ) یا (دن کا ایک واضح وقت) یا جب تک کہ ایک نظر نہ آئے اس کے لیے عمل کو روک دے گا۔ ای سی ایم اے بمقابلہ اے این ایس آئی ای سی ایم اے اور اے این ایس آئی کے معیارات مشترکہ طور پر نہیں بلکہ متوازی طور پر تیار کیے گئے تھے، حالانکہ ایک سے زیادہ کمیٹی کی رکنیت کے ساتھ۔ اس کے برعکس، بیسک کے لیے آئی ایس او ورکنگ گروپ نے اپنا کوئی معیار تیار نہیں کیا، اس کے بجائے ای سی ایم اے یا اے این ایس آئی معیار کو اپنانے کا منصوبہ بنایا۔ اے این ایس آئی سے آزاد، بنیادی معیار کے لیے ذمہ دار ای سی ایم اے کمیٹی نے اسے دو حصوں میں تقسیم کیا: ای سی ایم اے بنیادی-1 اور ای سی ایم اے بنیادی-2۔ بیسک-1 میں کچھ فائل ہیرا پھیری کا نظام شامل تھا لیکن اس میں مستثنی ہینڈلنگ کا فقدان تھا، جبکہ بیسک-2 نے فائل کمانڈز، فکسڈ اعشاریہ ریاضی اور مستثنی ہینڈلنگ سسٹم کا مکمل مجموعہ شامل کیا۔ مزید برآں، بیسک-1 میں تمام بنیادی مطلوبہ الفاظ جیسے محفوظ شدہ الفاظ تھے جنہوں نے تجزیہ کار کو آسان بنایا، جبکہ بیسک-2 میں انہوں نے اے این ایس آئی پیٹرن کی پیروی کی اور اسے صارف کے بنائے ہوئے سبروٹینز اور افعال میں استعمال کیا جا سکتا تھا۔ آئی ایس او ورکنگ گروپ نے ابتدائی طور پر ای سی ایم اے کے معیار کو استعمال کرنے کا منصوبہ بنایا تھا۔ دو مختلف امیدوار معیارات کے مسئلے کا سامنا کرتے ہوئے، ستمبر 1987 میں دونوں کو متحد کرتے ہوئے ایک واحد بین الاقوامی معیار تیار کرنے کی ہدایت کی گئی۔ یہ اس بات کی وضاحت کر کے پورا کیا گیا کہ کسی بھی معیار کی تعمیل کو آئی ایس او معیار کے مطابق ہونے کا دعوی کیا جا سکتا ہے۔ مزید پڑھنے کے بیرونی روابط اعشاریہ بنیادی-مکمل بنیادی اور اس کے گرافکس ماڈیولز کا نسبتا مکمل نفاذ بنیادی پروگرامنگ زبان امریکی قومی معیارات انسٹی ٹیوٹ کے معیارات ایکما معیارات