মো. কামরুল হাসান, সহকারী শিক্ষক
ক্যান্টনমেন্ট পাবলিক স্কুল
জাহানাবাদ সেনানিবাস, খুলনা
প্রগ্রামিং ভাষা
অনুবাদক প্রোগ্রাম (Translator) :
শিক্ষার্থী বন্ধুরা, বিশ্ব এক মরণঘাতি ভাইরাসের কারণে দুর্যোগ মুহূর্ত পার করছে। তোমাদের পরীক্ষাও স্থগিত হয়েছে। এই সময়টাতে ঘরে বসে চর্চা করবে। স্বাস্থ্যবিধি মেনে চলবে। অনুশীলন পাতায় নিয়মিত চোখ রাখবে।
গত ৫ মার্চ ও ১৯ মার্চ, ২০২০ খ্রি. তারিখে প্রকাশিত পর্বে জেনেছি যে, প্রোগ্রাম হলো একগুচ্ছ নির্দেশনা। নির্দেশনা কোনো না কোনো ভাষার মাধ্যমে দিতে হয়। যদি দুজনের ভাষা একই রকম হয় তাহলে কাজটিও সহজে ও দ্রুতগতিতে সম্পাদিত হয়। যদি দুজনের ভাষা দুরকম হয়, সেক্ষেত্রে প্রয়োজন হয় এমন একজন ব্যক্তির যে কিনা দুজনের ভাষা বোঝে অর্থাত্ দোভাষী (Interpreter) কিংবা অনুবাদক (Translator)।
১৯৪৫ সাল থেকে শুরু করে এখন পর্যন্ত কয়েকশত ভাষা আবিষ্কৃত হয়েছে। এর কোনোটি কম্পিউটার সরাসরি বুঝতে পারে। আবার কোনোুিট সরাসরি বুঝতে পারে না। সেক্ষেত্রে অনুবাদকের (Translator) প্রয়োজন হয়। এসব শত শত প্রোগ্রামিং ভাষার বৈশিষ্ট্য অনুযায়ী ৫টি স্তরে বা প্রজন্মে (Generation) ভাগ করা হয়েছে-যেগুলো সম্পর্কে গত পর্বে আলোচনা করা হয়েছে।
মেশিন ভাষায় (Machine Language) 0 বা 1 এই দুই বাইনারি অঙ্ক (Digit) অথবা হেক্স পদ্ধতি ব্যবহার করে সবকিছু লেখা হয়। এরপর ১৯৫০ সালের দিকে অ্যাসেম্বলি ভাষা আবিষ্কৃত হয়। নেমোনিক কোডের মাধ্যমে অ্যাসেম্বলি ভাষাতে প্রোগ্রাম লেখা হতো। কিন্তু কম্পিউটার মেশিন ভাষা ছাড়া অন্য ভাষা বুঝতে পারে না। তাই প্রয়োজন হয় অনুবাদকের। অ্যাসেম্বলি ভাষা থেকে মেশিন ভাষাতে রূপান্তর করার জন্য আবিষ্কৃত হয় অ্যাসেম্বলারের।
মূলত অনুবাদক প্রোগ্রামের কাজ হলো, উত্স (Source) প্রোগ্রাম থেকে বস্তু (Object) প্রোগ্রামে পরিণত করা।
প্রিয় শিক্ষার্থীরা, যদি জিজ্ঞাসা করা হয়, অনুবাদকের কাজ কী ? তোমরা খুব সহজেই বলবে, অনুবাদ করা অর্থাত্ উত্স (Source) প্রোগ্রাম থেকে বস্তু (Object) প্রোগ্রামে পরিণত করা। এছাড়াও অনুবাদকের আরও কাজ রয়েছে। একটি উদাহরণ লক্ষ করি :
দুজন ভিন্ন ভাষাভাষী ব্যক্তির মধ্যে পারস্পরিক যোগাযোগের জন্য একজন দোভাষী বা অনুবাদক ভাষা রূপান্তরের কাজটা করেন। কোনো একটি বিশেষ কারণে দুজনের মধ্যে মনোমালিন্যের মাত্রা এতটাই চরম পর্যায়ে পৌঁছাল যে, তারা এমন কিছু শব্দ প্রয়োগ করল যা দোভাষী বা অনুবাদকের কাছে বোধগম্য হলো না। তখন দোভাষী বা অনুবাদকের সেগুলো ভুল হিসেবে শনাক্ত করল।
ঠিক তেমনি অনুবাদকের আরও একটি কাজ হলো, প্রোগ্রামে ভুল থাকলে তা চিহ্নিত বা শনাক্ত করা। এখাওে মনে রাখা প্রয়োজন, শনাক্তকৃত ভুল সংশোধন করা অনুবাদকের কাজ নয়; সংশোধন করা প্রোগ্রাম রচনাকারীর কাজ।
অনুবাদক সফটওয়্যার তিন ধরনের।
১.অ্যাসেম্বলার ২.ইন্টারপ্রেটার ৩.কম্পাইলার
১৯৬০ সালের দিকে উচ্চতর ভাষা (High Level Language) আবিষ্কৃত হওয়ার সময় অনুবাদক হিসেবে ইন্টারপ্রেটারের ব্যবহার শুরু হয়। এটি উচ্চতর ভাষা (High Level Language) থেকে মেশিন ভাষার অবজেক্ট প্রোগ্রামে রূপান্তর করে। মানুষের ব্যবহূত ভাষার মতো লেখা যায় বিধায় এটি ব্যাপক জনপ্রিয়তা পায়। কিন্তু, ইন্টারপ্রেটারের পক্ষে সম্পূর্ণ প্রোগ্রাম একবারে অনুবাদ করা সম্ভব হতো না। এক লাইন করে অনুবাদ করা সম্ভব হতো। অ্যাসেম্বলারের তুলনায় অনেক সুবিধা থাকা সত্ত্বেও কিছু অসুবিধা থাকার কারণে কম্পাইলার আবিষ্কৃত হয়। এখনও অনুবাদক হিসেবে কম্পাইলার ব্যবহূত হচ্ছে।
বন্ধুরা, আজ এই পর্যন্তই। এখানে খুবই অল্প পরিসরে আলোচনা করা হয়েছে। প্রত্যেকটা অনুবাদকের কাজ, সুবিধা ও অসুবিধা তোমাদের পাঠ্যপুস্তকে বিশদভাবে বর্ণনা করা আছে। সেগুলো মনোযোগ দিয়ে পড়বে। আগামী পর্বে ‘অ্যালগরিদম (Algorithm)’ নিয়ে আলোচনা করা হবে। সকলে মনোযোগ দিয়ে লেখাপড়া করবে।
