কয়েকটি প্রোগ্রামিং ল্যাংগুয়েজ, যেগুলোর নাম আপনি কখনোই শোনেন নি

বর্তমানে প্রোগ্রামিং ল্যাংগুয়েজ বলতে আমরা যেগুলো বুঝি, সেগুলোর বাইরেও আরো অনেক ল্যাংগুয়েজ রয়েছে যেগুলোর নাম হয়তো আপনি কখনোই শোনেন নি এবং কেন সেগুলো অন্যান্য জনপ্রিয় ল্যাংগুয়েজগুলোর মত জনপ্রিয় নয়, তাও জানেন না। বর্তমানে মডার্ন প্রোগ্রামিং ল্যাংগুয়েজ বলতে আমরা পাইথন, জাভাস্ক্রিপ্ট, সি++, সি শার্প, জাভা, কটলিন, ডার্ট এসবই বুঝে থাকি। তবে এগুলোর বাইরেও আরও অনেক প্রোগ্রামিং ল্যাংগুয়েজ আছে, যেগুলো বর্তমানে আর তেমন ব্যাবহার করা হয়না অথবা খুব কম প্রোজেক্টে ব্যাবহার করা হয়, তাই এগুলোর নামও আমরা অনেকেই জানিনা। আজকে এমন কয়েকটি প্রোগ্রামিং ল্যাংগুয়েজ নিয়ে আলোচনা করতে চলেছি, যেগুলোর নাম হয়তো আপনি কখনোই শোনেন নি। যাইহোক, আর কথা না বাড়িয়ে সরাসরি মেইন টপিকে আসা যাক।

আগেই বলে রাখি, এই আর্টিকেলে প্রোগ্রামিং রিলেটেড বেশ কিছু টার্মস আছে যার কয়েকটার ব্যাপারে আমি নিজেও ভালো জানি না। তাই আপনার যদি প্রোগ্রামিং নিয়ে কিছু বেসিক নলেজ না থাকে, তাহলে হয়তো এই আর্টিকেলটি আপনার জন্য নয়। সেক্ষেত্রে আপনি চাইলে এই পোস্টটি এড়িয়ে যেতে পারেন!


এই আর্টিকেলের বিষয়বস্তু সমূহ

Gravity

গ্র‍্যাভিটি একটি MIT লাইসেন্সড ওপেন-সোর্স প্রোগ্রামিং ল্যাংগুয়েজ, যেটি মুলত তৈরি করা হয়েছিলো অ্যান্ড্রয়েড এবং আইওএস ডেভেলপমেন্টের উদ্দেশ্যে। অন্য সব মডার্ন প্রোগ্রামিং ল্যাংগুয়েজের মতোই এটিতেও অ্যাডভান্সড প্রোগ্রামিং, যেমন অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং এবং ফাংশনাল প্রোগ্রামিং এর সাপোর্ট আছে।

টির নেমিং কনভেনশন এবং সিনট্যাক্স অনেকটা Swift ল্যাংগুয়েজের মতো, যা আইওএস ডেভেলপমেন্টের জন্য অ্যাপলের তৈরি ন্যাটিভ ল্যাংগুয়েজ। আর এই ল্যাংগুয়েজ পাইথনের মতোই প্রত্যেকটি ভ্যারিয়েবলই একেকটি অবজেক্ট। খুব সম্ববত এই ল্যাংগুয়েজটি জনপ্রিয়তা না পাওয়ার কারণ হচ্ছে Swift। যদি Swift না থাকতো, তাহলে Gravity নামের এই ল্যাংগুয়েজটি হয়তো অনেক বেশি জনপ্রিয়তা লাভ করতো।

IMBA

গ্র‍্যাভিটির মতোই ইম্বা নামের এই ল্যাংগুয়েজটিও একটি ওপেন-সোর্স প্রোজেক্ট। তবে ইম্বা ল্যাংগুয়েজটি তৈরি করা হয়েছিলো ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টের উদ্দেশ্যে। আপনি জানলে অবাক হবেন, অধিকাংশ জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক, যেমন- রিয়্যাক্ট এবং ভিউজেএসের মতো ইম্বা ল্যাংগুয়েজটিও নিজেদের ভার্চুয়াল ডম আছে এবং ক্লেইম করা হয় যে, ইম্বা ল্যাংগুয়েজের ভার্চুয়াল ডম রিয়্যাক্ট এবং ভিউজেএস এর থেকে প্রায় ২০ গুন বেশি ফাস্ট।

তবে রুবি এবং পাইথনের মতোই Imba দিয়ে তৈরি ওয়েব অ্যাপ্লিকেশন বিল্ড টাইমে জাভাস্ক্রিপ্টে কম্পাইল হয়। তবে এটি কফিস্ক্রিপ্টের মতো জাস্ট জাভাস্ক্রিপ্টের আরেকটি সাবসেট বা সুপারসেট নয়। এটির সিনট্যাক্স এবং নেমিং কনভেনশন সবকিছুই অনেকটা পাইথনের মতো। আর এই ল্যাংগুয়েজটি অনেকটা বিগিনার ফ্রেন্ডলি। যদিও ওয়েব ডেভেলপমেন্টের ক্ষেত্রে ইম্বা ল্যাংগুয়েজটি এখন একেবারেই ব্যাবহার করা হয়না, তবে আপনি চাইলে আপনার পারসোনাল প্রোজেক্টে এটি ব্যবহার করতে পারেন। এমন না যে এই ল্যাংগুয়েজটি প্রোডাকশন রেডি নয়। আপনি চাইলে অনলাইন লার্নিং প্লাটফর্ম Scrimba থেকে ভিডিও টিউটোরিয়ালের সাহায্যে এই ল্যাংগুয়েজটি শিখতে পারবেন।

Vyper

প্রথমে নাম শুনে এটিকে বিষাক্ত কোন সাপ মনে হলেও, এটি আসলে আরেকটি প্রোগ্রামিং ল্যাংগুয়েজ। সে ব্যাপারে বলতে হলে পাইথনের নাম শুনেও এটিকে বিষাক্ত সাপ মনে হওয়ার কথা। যাইহোক, ভাইপার নামের এই ল্যাংগুয়েজটির টার্গেট হচ্ছে EVM (Ethereum Virtual Machine)। যেমনটা আপনারা অনেকেই জানেন, ইথিরিয়াম হচ্ছে বিটকয়েনের মতোই একটি জনপ্রিয় ক্রিপটোকারেন্সি। ইথিরিয়ামে মুলত যে প্রোগ্রামিং ল্যাংগুয়েজ ব্যবহার করা হয়েছে, তার নাম হচ্ছে Solidity।

তবে এটির কিছু সিকিউরিটি লুপহোল এবং ব্যাড সিকিউরিটি প্র্যাকটিস ফিক্স করার উদ্দেশ্যেই ভাইপার নামের নতুন এই ল্যাংগুয়েজটি তৈরি করা হয়েছে। এই ল্যাংগুয়েজটি মূলত পাইথমের ওপরে বেজ করা তৈরি করা হয়েছে, যেমন পাইথন ল্যাংগুয়েজটি প্রোগ্রাম করা হয়েছে C ব্যাবহার করে। সত্যি কথা বলতে, ক্রিপটোকারেন্সি এবং ব্লকচেইনের বাইরে রিয়াল ওয়ার্ল্ড প্রোগ্রাম বা অ্যাপ তৈরিতে এই ল্যাংগুয়েজটির কোনই কাজ নেই। তবে আপনি যদি ক্রিপটোকারেন্সি এবং ব্লকচেইন ইনফ্রাসট্রাকচার শিখতে চান, তাহলে হয়তো আপনার ভাইপার শেখার দরকার পড়তে পারে।

Morfa

মেইনলি D নামের ওপেন-সোর্স ল্যাঙ্গুয়েজের ওপরে বেজ করা তৈরি করা একটি পাওয়ারফুল প্রোগ্রামিং ল্যাংগুয়েজ হচ্ছে Morfa। এটি পাইথন এবং জাভাস্ক্রিপ্টের মত হাই লেভেল প্রোগ্রামিং ল্যাঙ্গুয়েজ নয়। বরং এটিকে জাভা, সি, সি++ এবং সি শার্পের মতো ল্যাংগুয়েজগুলোর অলটারনেটিভ হিসেবে ব্যবহার করা যাবে। এটিতেও মডার্ন সকল প্রোগ্রামিং ফিচারস, যেমন- অবজেক্ট অরিয়েন্টেড এবং ফাংশনাল প্রোগ্রামিং এর সাপোর্ট রয়েছে। শুধু তাই নয়, এটির একটি নিজস্ব REPL ও আছে, যার সাহায্যে এই ল্যাংগুয়েজটি এবং এর সকল ডিপেন্ডেন্সি ইন্সটল না করেও আপনি এই ল্যাংগুয়েজটি ট্রাই করতে পারবেন।

Morfa তে কিছু স্পেসিফিক ল্যাংগুয়েজ ফিচারস আছে, যার সাহায্যে আপনি DSL (Domain Specific Language) তৈরি করতে পারবেন। অপারেটর ওভারলোডিং, ইউজার-ডিফাইনড অপারেটর, হায়ার অর্ডার ফাংশনস এই ধরনের অ্যাডভান্সড প্রোগ্রামিং কনসেপ্ট এবং ফিচারসও আছে এই ল্যাঙ্গুয়েজে। এই ল্যাঙ্গুয়েজে আপনি অনেকটা ম্যাট্রিক্স এর মতো সিনট্যাক্সে কোড লিখতে পারবেন। আর, বেঞ্চমার্ক রেজাল্ট অনুযায়ী Morfa  কোডের পারফরমেন্স সি++ এবং সি এর সাথে কম্পেয়ারেবল।

COBOL

আপনি জানলে অবাক হবেন যে, এটিও বর্তমানে পাইথম এবং জাভাস্ক্রিপ্টের মতোই অত্যন্ত জনপ্রিয় একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ। কিভাবে? আমরা তো কখনো এটার নামই শুনি না। এই এক্সট্রিমলি পাওয়ারফুল প্রোগ্রামিং ল্যাঙ্গুয়েজটির নাম না শোনার কারণ হচ্ছে, এটি আমরা সচরাচর সাধারন যেসব প্রোজেক্ট নিয়ে কাজ করি, সেগুলোর জন্য নয়। এটি কোন অ্যান্ড্রয়েড বা আইওএস কিংবা উইন্ডোজ অ্যাপ বা ওয়েব অ্যাপ ডেভেলপ করার ল্যাঙ্গুয়েজ নয়। এটি একটি বিজনেস অরিয়েন্টেড ল্যাঙ্গুয়েজ। সাধারনত সুপার কম্পিউটার এবং অনেক প্রতি সেকেন্ডে অনেক লার্জ স্কেল ডাটা নিয়ে কাজ করা হয় যেসব সিস্টেমে, সেখানে COBOL ব্যবহার করা হয়।

যেমন, IBM এর সুপার কম্পিউটারগুলোতে যেসব সেন্সিটিভ ডাটা ক্যালকুলেশন করা হয়, কিংবা প্রতি সেকেন্ডে একেবারে নিখুঁতভাবে যেসব ক্যালকুলেশন করার দরকার পড়ে (যেমন- ব্যাংকিং বা ক্রেডিট কার্ড ট্রাঞ্জেকশন কিংবা টিকেটিং সিস্টেম) সেগুলোতে ব্যাবহার করা হয় COBOL। আপনি জানলে অবাক হবেন যে, COBOL ল্যাঙ্গুয়েজটি আজ থেকে প্রায় ১০০ বছর আগে ডেভেলপ করা হয়েছিলো এবং এটি এখনও পর্যন্ত অধিকাংশ সুপার কম্পিউটার এবং ব্যাংকিং সেক্টরে COBOL অ্যাক্টিভলি ব্যবহার করা হচ্ছে এবং প্রতিদিনই নতুন নতুন COBOL ডেভেলপার হায়ার করা হচ্ছে।

এতকিছু শোনার পরে আপণী হয়তো ভাবছেন যে COBOL হয়তো সি++এর মতো খুবই হার্ড-টু-লার্ন একটি ল্যাঙ্গুয়েজ। কিন্তু ব্যাপারটা এমন নয়। যদি অন্যান্য মডার্ন ল্যাংগুয়েজের সাথে তুলনা করেন, তাহলে COBOL খুবই ইজি-টু-লার্ন একটি ল্যাঙ্গুয়েজ। এটির সিনট্যাক্স পাইথনের মতো ক্লোজ টু ইংলিশ। ল্যাংগুয়েজটি অনেকটা ইম্পারেটিভ, অর্থাৎ সিমপ্লি কমান্ড দিয়ে দিয়ে কাজ করার মতো। যদি আপনার সিকিউরিটি, ব্যাক-এন্ড এবং মেইনলি সিস্টেম-লেভেল প্রোগ্রামিং নিয়ে আগ্রহ থাকে, তাহলে অবশ্যই COBOL শেখার চেষ্টা করতে পারেন।

Images: Shutterstock.com

About the author

সিয়াম

Add comment

Categories