CALL/360:BASIC
کال/360: بیسک سسٹم/360 اور اس کے بعد کے پلیٹ فارمز کے لیے بیسک پروگرامنگ زبان کی آئی بی ایم بولی تھی۔ یہ 1960 کی دہائی کے وسط میں ڈارٹماؤتھ بیسک کے ورژن پر مبنی تھا لیکن اس میں متعدد ایکسٹینشنز شامل کی گئیں۔ ان میں سے زیادہ تر کا تعلق فائل ہینڈلنگ سے تھا، جس کی اس وقت ڈارٹماؤتھ میں کمی تھی۔ اس نے کچھ آئی بی ایم ٹرمینلز پر پائی جانے والی ریاضیاتی علامتوں کے لیے بھی سپورٹ شامل کی، تاکہ اسے براہ راست درج کیا جا سکے۔ بصورت دیگر اختلافات معمولی ہوتے ہیں۔ ہسٹری کال/360: بیسک کا اعلان 1968 میں کیا گیا تھا، اس نظام کے لیے کئی دیگر زبانوں کے ساتھ بشمول اے پی ایل اور فورٹرن اور ڈیٹا ٹیکسٹ مارک اپ زبان پر مبنی ٹیکسٹ ایڈیٹر۔ اس نظام کے لیے ابتدائی تشہیر میں فخر کیا گیا کہ "ناشتہ کے بعد کال/360: بیسک سیکھنا شروع کر سکتے ہیں اور آپ دوپہر کے کھانے سے پہلے ہمارے کمپیوٹر کو شیئر کر سکتے ہیں"۔ کال/360 سوٹ آئی بی ایم کے انفارمیشن مارکیٹنگ ڈیپارٹمنٹ کے اندر تیار کیا گیا تھا۔ ابتدائی طور پر، مصنوعات کو ملکیتی سمجھا جاتا تھا اور صرف آن لائن سروس کے ذریعے ان تک رسائی حاصل کی جا سکتی تھی۔ صارفین کی مانگ نے انہیں ان مصنوعات کو دوسرے سسٹم/360 صارفین کو پیش کرنے پر مجبور کر دیا، جو انہوں نے بغیر کسی مدد کے "جیسا ہے" کی بنیاد پر جاری کر کے کیا۔ اسی سال کے آخر میں، آئی بی ایم نے اپنی ٹائم شیئرنگ کی باقی خدمات کے ساتھ اس محکمے کو سروس بیورو کارپوریشن (ایس بی سی) میں منتقل کر دیا، جس میں کال/360 آپریٹنگ سسٹم اور کال/360: بیسک شامل ہیں۔ اس تاریخ کے بعد دستی زبان کو ایس بی سی پروڈکٹ کے طور پر حوالہ دیتے ہیں۔ 1973 میں، ایس بی سی کو خود ایک طویل عرصے سے جاری اینٹی ٹرسٹ مقدمے کے حصے کے طور پر کنٹرول ڈیٹا کارپوریشن میں منتقل کر دیا گیا۔ تفصیل کال/360: بیسک تقریبا ڈارٹماؤتھ بیسک فورتھ سے ملتا جلتا ہے، جس میں جدید ریکس ریاضی کی خصوصیات کے لیے سپورٹ بھی شامل ہے۔ یہ بنیادی طور پر فائل ہینڈلنگ کی حمایت میں مختلف ہے۔ بنیادی باتیں زبان میں ایل ای ٹی، پرنٹ، اینڈ، FOR.NEXT اختیاری کے ساتھ، جی او ٹی او، GOSUB.RETURN، IF.THEN، IF.GOTO، ڈی ای ایف، ریڈ، ڈیٹا، ری اسٹور ڈی آئی ایم، اور آر ای ایم کمانڈز شامل تھیں۔ اس فہرست میں، اس نے فارم کا کمپیوٹیڈ گوٹو شامل کیا۔ نوٹ کریں کہ ایک بیان میں صرف ایک لائن نمبر کے بعد کیا جا سکتا ہے، بعد میں صوابدیدی بیانات کی اجازت دینے کا خیال بعد میں ظاہر نہیں ہوا۔ صندوق کو دستی میں ہمیشہ ایک بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی بڑی دی، اینڈ کمانڈز کے بعد کمنٹ سٹرنگ بھی لگائی جا سکتی تھی، جہاں کالون کی ضرورت نہیں تھی۔ لائن نمبر کے بعد توسیع کی گئی۔ جس لائن کا حوالہ دیا گیا ہے وہ کالون سے شروع ہوتی ہے اور پھر فارمیٹنگ سٹرنگز کا ایک سلسلہ۔ تاروں کے اس سلسلے کو "امیج" کے نام سے جانا جاتا تھا۔ پرنٹ کی جانے والی اشیاء کو کوما یا سیمی کولن کے ذریعے الگ کیا جا سکتا ہے، جس میں کوما میں "پرنٹ زون" 18 حروف چوڑے ہوتے ہیں۔ ایک نئی کمانڈ، نے ایک بیان کے ساتھ پروگرام کو روک دیا اور پھر صارف کے متن درج کرنے کا انتظار کیا، جسے نظر انداز کر دیا گیا۔ اینڈ آف لائن کردار کی وجہ سے پروگرام جاری رہا۔ اس کے بعد ماخذ میں ایک تبصرہ بھی کیا جا سکتا ہے۔ اس میں ریاضی کی ہدایات کا وہی بنیادی سیٹ بھی شامل تھا جیسا کہ ڈارٹماؤتھ،،، اور، نیز ایکسپوینٹس کے لیے اوپر تیر اور دو ایسٹرسک فارم کو شامل کرنا۔ منطقی آپریٹرز میں،،،، اور کے معیاری سیٹ کے ساتھ ساتھ خاص کردار ورژن،،، شامل تھے۔ اس میں ڈارٹماؤتھ سے ریاضیاتی افعال کا معیاری سیٹ شامل تھا، جس میں بیس-2 لاگز کے لیے،،،،،، اور بیس-10 کے لیے شامل کیا گیا تھا۔ اس میں ڈگری اور ریڈینس کے درمیان تبدیل کرنے کے افعال بھی شامل تھے، اور تین پہلے سے طے شدہ اندرونی مستقل، اور، جو اصل نمبروں میں ٹائپ کرنے کے بجائے استعمال کیے جا سکتے تھے۔ کال/360 میں سٹرنگ متغیرات شامل تھے، جو حال ہی میں اسی ڈالر سائن نوٹیشن کا استعمال کرتے ہوئے ڈارٹماؤتھ میں متعارف کرائے گئے تھے۔ اس نے سٹرنگ کے مستقلات کو سنگل یا ڈبل کوٹس کے ساتھ حد بندی کرنے کی صلاحیت کے ساتھ ساتھ اس قسم کے ایک ہی کردار کو شامل کرنے کے لیے سٹرنگ کے اندر کسی بھی کردار کے دو ٹائپ کرنے کی صلاحیت کو شامل کیا۔ مثال کے طور پر، نمائندگی کرتا ہے۔ تاروں کو اندرونی طور پر 18 حروف کی لمبائی میں تقسیم کیا گیا تھا، اور وہ تار جو پورے 18 حروف کے ریکارڈ کو استعمال نہیں کرتے تھے انہیں خالی جگہوں کے ساتھ پیڈ کیا گیا تھا، جس کا مطلب 18 خالی جگہوں کے طور پر کیا جائے گا۔ صف اور میٹرکس ریاضی ڈارٹماؤتھ کے ابتدائی ورژن کی طرح، کال/360: بیسک نے ایک اور دو جہتی صفوں کی حمایت کی، جس میں نچلا انڈیکس ہمیشہ 1 ہوتا ہے۔ اس طرح استعمال کرتے ہوئے بیان کردہ صف تین اقدار پر مشتمل ہوتی ہے، A (1) سے A (3)۔ کال/360 نے سٹرنگ صفوں کی وضاحت کرنے کی صلاحیت کو بھی شامل کیا، جس میں ہر اندراج 18 حروف کا واحد سٹرنگ ہوتا ہے۔ ڈارٹماؤتھ کے برعکس، ایسا نہیں لگتا کہ متغیرات ہمیشہ ڈی آئی ایمڈ ہوتے تھے۔ ڈارٹماؤتھ میں کوئی بھی اے کو طول و عرض کے بغیر حوالہ دے سکتا ہے، اس صورت میں اس کا وجود کا ڈیفالٹ طرز عمل تھا۔ دستی واضح طور پر یہ نہیں کہتا ہے کہ کال/360 ایسا نہیں کرتا ہے، لیکن یہ ریاستی متغیرات کو میٹرکس آپریشنز میں طول و عرض کے بغیر استعمال نہیں کیا جا سکتا ہے۔ ایک پروگرام میں زیادہ سے زیادہ 29 عددی صفوں کی اجازت تھی، جس میں تمام صفوں میں عناصر کا کل مجموعہ 7167 سے زیادہ نہیں تھا۔ کال/360: بیسک میں ڈارٹماؤتھ کے زیادہ تر میٹرکس کمانڈز شامل تھے، بشمول ایک واحد آپریشن کے طور پر میٹرکس پر بنیادی ریاضی انجام دینے کی صلاحیت، جیسے کہ A ایک صف ہے جس کے بعد اس کے تمام عناصر کو 10 سے ضرب دی جائے گی۔ اس میں افعال بھی شامل تھے، اور۔ ڈیٹا کو میٹرکس کے ساتھ اور آؤٹ پٹ کے ساتھ لوڈ کیا جا سکتا ہے۔ ان اصل کمانڈوں میں انہوں نے اور بھی شامل کیا، جو میٹرکس کے تمام عناصر کو فائل میں یا اس سے پڑھنے یا لکھنے کے لیے استعمال ہوتے تھے۔ فائلیں کال/360: بیسک میں اہم اضافہ ایک قابل استعمال فائل ہینڈلنگ سسٹم تھا۔ اس کا آغاز اس سے ہوا جس نے ایک فائل کھولی اور اسے فراہم کردہ فائل نمبر، 10 کو تفویض کیا، جو اس معاملے میں ایک اظہار ہو سکتا ہے۔ فائل سے پڑھنا اسی عمومی انداز میں کیا گیا تھا جس طرح بیان کیا گیا تھا۔ تحریر کو دوسری صورت میں ایک جیسے ہی سنبھالا جاتا تھا۔ فائل پوائنٹر کو ایک یا زیادہ فائل نمبروں کے ساتھ فائل کے شروع میں واپس منتقل کیا جا سکتا ہے۔ فائل کے اندر پوزیشن کی وضاحت کرنے کا کوئی طریقہ نہیں تھا۔ ایک یا زیادہ فائل نمبروں کی اسی طرح کی فہرست کے ساتھ فائل کے ہینڈلز کو آزاد کیا گیا۔ مثال درج ذیل پروگرام فائل ہینڈل 10 کے طور پر ان پٹ کے لیے فائل کھولتا ہے، اور پھر ایک لوپ میں پروڈکٹ کے نام اور چار سیلز قیمتوں پر مشتمل ڈیٹا کی لائنیں پڑھتا ہے۔ نوٹ کریں کہ لوپ ختم نہیں ہوا ہے، اس کے بجائے، یہ پروگرام اس وقت ختم ہوتا ہے جب ڈیٹا ختم ہو جاتا ہے اور غلطی کا سبب بنتا ہے۔ دستی میں وضاحت نہیں کی گئی ہے کہ اس وقت لائن 70 پر کنٹرول کیسے منتقل کیا جاتا ہے۔ اسکرین پر آؤٹ پٹ کو لائن 50 پر موجود تصویر کا استعمال کرتے ہوئے فارمیٹ کیا جاتا ہے۔ حوالہ جات آئی بی ایم سافٹ ویئر بیسک پروگرامنگ زبان