Bounds-checking elimination
کمپیوٹر سائنس میں، باؤنڈ چیکنگ ایلیمینیشن ایک کمپائلر آپٹیمائزیشن ہے جو پروگرامنگ زبانوں یا رن ٹائم سسٹمز میں مفید ہے جو باؤنڈ چیکنگ کو نافذ کرتی ہے، ہر انڈیکس کو ایک صف میں چیک کرنے کا عمل اس بات کی تصدیق کرنے کے لیے کہ انڈیکس انڈیکس کی متعین درست حد میں ہے۔ اس کا مقصد یہ پتہ لگانا ہے کہ ان میں سے کس انڈیکسنگ آپریشن کو رن ٹائم پر تصدیق کرنے کی ضرورت نہیں ہے، اور ان چیک کو ختم کرنا ہے۔ ایک عام مثال صف عنصر تک رسائی حاصل کرنا، اس میں ترمیم کرنا، اور ترمیم شدہ قدر کو اسی صف میں اسی مقام پر محفوظ کرنا ہے۔ عام طور پر، اس مثال کے نتیجے میں باؤنڈ چیک ہوتا ہے جب عنصر کو صف سے پڑھا جاتا ہے اور دوسری حد چیک ہوتی ہے جب ترمیم شدہ عنصر کو اسی صف انڈیکس کا استعمال کرتے ہوئے محفوظ کیا جاتا ہے۔ باؤنڈ چیکنگ کا خاتمہ دوسری جانچ کو ختم کر سکتا ہے اگر مرتب یا رن ٹائم اس بات کا تعین کر سکتا ہے کہ نہ تو صف کا سائز اور نہ ہی انڈیکس دو صف کی کارروائیوں کے درمیان تبدیل ہو سکتا ہے۔ ایک اور مثال اس وقت ہوتی ہے جب ایک پروگرامر صف کے عناصر پر لوپ کرتا ہے، اور لوپ کی حالت اس بات کی ضمانت دیتی ہے کہ انڈیکس صف کی حدود میں ہے۔ یہ پتہ لگانا مشکل ہو سکتا ہے کہ پروگرامر کا دستی چیک خودکار چیک کو بے کار بنا دیتا ہے۔ تاہم، اس صورت میں مرتب کرنے والے یا رن ٹائم کے لیے مناسب حد کی جانچ کا خاتمہ کرنا اب بھی ممکن ہو سکتا ہے۔ مقامی طور پر مرتب کردہ زبانوں میں نفاذ حدود کی جانچ کے خاتمے کے لیے ایک تکنیک ٹائپ شدہ جامد سنگل اسائنمنٹ فارم کی نمائندگی کا استعمال کرنا اور ہر صف کے لیے اس مخصوص صف کے لیے ایک محفوظ انڈیکس کی نمائندگی کرنے والی نئی قسم بنانا ہے۔ صف اشاریہ کے طور پر قدر کے پہلے استعمال کے نتیجے میں رن ٹائم ٹائپ کاسٹ (اور مناسب چیک) ہوتا ہے، لیکن اس کے بعد محفوظ اشاریہ قدر کو درستگی یا حفاظت کی قربانی کے بغیر، ٹائپ کاسٹ کے بغیر استعمال کیا جا سکتا ہے۔ جے آئی ٹی مرتب کردہ زبانوں میں جسٹ ان ٹائم مرتب کردہ زبانیں جیسے جاوا اور سی #اکثر صفوں تک رسائی حاصل کرنے سے پہلے رن ٹائم پر انڈیکس چیک کرتی ہیں۔ کچھ صرف وقت پر مرتب کرنے والے جیسے ہاٹ اسپاٹ ان میں سے کچھ چیک کو ختم کرنے کے قابل ہوتے ہیں اگر انہیں پتہ چلتا ہے کہ انڈیکس ہمیشہ صحیح حد میں ہوتا ہے، یا اگر پہلے کا چیک پہلے ہی مستثنی ہوتا۔ حوالہ جات بیرونی روابط ڈبلیو امی، جے وان رونے، ایم فرانز۔ موجودہ جاوا ورچوئل مشین (2002) کی کارکردگی کو بڑھانے کے لیے سیف ٹی ایس اے کی نمائندگی کا استعمال کرنا۔ کمپیوٹر کی غلطیاں مرتب کی اصلاح