অতিরিক্ত বৈশিষ্ট সম্বলিত মানাড উৎপাদন ছাড়াও কোমানাড সংজ্ঞায়িত করা সম্ভব। ধারণামূলকভাবে, মানাড যদি অধীন মানসমূহের সমন্বয়ে গঠিত কম্পুগণনাকে প্রদর্শন করে, তবে, কোমানাডসমূহ ঐ সকল মানসমূহে লঘুকরণ হিসেবে দেখা যেতে পারে। মানাডিয় কোডের, এক দিক দিয়ে দেখলে, সম্পূর্ণরূপে "মোড়ক উন্মোচন করা" সম্ভব নয়; একবার যদি কোন মানকে মানাড দ্বারা মুড়িয়ে ফেলা হয় তাহলে সেই মানটি যে কোন প্রকারের পার্শ্বপ্রতিক্রিয়া সহ ঐ মানাডের অভ্যন্তরে আলাদা অবস্থায় থাকে (বিশুদ্ধ ফাংশনাল প্রোগ্রামিং এর এটি একটি ভাল দিক)। কখনও কখনও প্রাসঙ্গিক তথ্য গ্রহণ করা নিয়ে সমস্যার সৃষ্টি হতে পারে, যেগুলি কোমানাড বিশদভাবে মুকাবিলা করতে সক্ষম।

আসলে, কোমানাড হল মানাডের , যেটি শিথিলভাবে নির্দেশ করে, এদের প্রয়োজনীয় উপাদান একই থাকবে, কেবলমাত্র টাইপ-সাক্ষরের গতিপথ পরিবর্তিত হবে। -কেন্দ্রিক মানাডের সংজ্ঞা থেকে শুরু করলে, নিচের উপাদানসমূহ দিয়ে একটি কোমানাড গঠিত হবে:



মানাডের মতই, এর একটি দ্বৈতের সাহায্যে ফাঙ্কটর হতে কোমানাড আহরণ করা সম্ভব:


যদিও এর ন্যায় ক্রিয়াপ্রণালীকে বিপরীতমুখী করা হয়ে থাকে, তবুও একটি কোমানাড তার লক্ষিত ফাংশনগুলির বৈপরিত্য সাধন করে না, এবং ফলাফলস্বরূপ, কোমানাড নিতান্তই বিশিষ্ট ফাঙ্কটর, নয়। , , এবং বিশিষ্ট এই একান্তরিত (অলটারনেট) সংজ্ঞাটিকে অবশ্যই তার নিজস্ব কোমানাড সূত্র মেনে চলতে হবে:

এবং মানাডের ন্যায়, দুটি গাঠনিক আকৃতিকে স্বয়ংক্রিয়ভাবে একে অপরটিতে রূপান্তরিত করা যেতে পারে:

একটি সাধারণ উদাহরণ দেয়া যেতে পারে, Product comonad (উৎপাদ কোমানাড) যেটি একটি ইনপুটের মান ও পারিপার্শ্বিক তথ্যের ওপর ভিত্তি করে আউটপুটের মান প্রদান করে থাকে। আসলে, codice_90 কোমানাড হচ্ছে codice_91 কোমানাড এর দ্বৈত এবং কার্যত codice_92 মানাডের অনুরূপ (নিচে উভয় মানাড নিয়ে আলোচনা করা হয়েছে)। codice_90 এবং codice_92 কেবলমাত্র যে সকল সাক্ষরের ফাংশন গ্রহণ করে, এবং, ঐসকল ফাশনের সম্পূরণ করার জন্য কীভাবে মানসমূহকে মুড়িয়ে বা মোড়ক উন্মোচন করে থাকে সেদিক দিয়ে আলাদা হয়।

একটি তাৎপর্যপূর্ণ উদাহরণ হচ্ছে Stream comonad (প্রবাহ কোমানাড) যেটি প্রদর্শন, এবং এর সাহায্যে আগত সিগনালে ছাকনি (ফিল্টার) লাগাতে ব্যবহার হতে পারে। আদতে, মানাডের মত জনপ্রিয় না হলেও গবেষকগণ এবং মডেল করার জন্য কোমানাড বিশেষভাবে সহায়ক হিসেবে খুজে পেয়েছেন।

এদের বাধাধরা সংজ্ঞার কারণে মানাড ও কোমানাডের মধ্যে কোন কিছুকে পরস্পরের মাঝে আদানপ্রদান করা কোন সহজ ব্যাপার নয়। উচ্চস্তরের বিমূর্তন হিসেবে, উভয় গঠনপ্রণালীকে অন্তর্ভুক্ত করে। কিন্তু, মানাডিয় ও কোমানাডিয় কোডকে সমন্বয় করার আরও দৃঢ় উপায় বের করার জন্য বর্তমানে সক্রিয়ভাবে গবেষণা করা হচ্ছে।

কোমানাড
আরেকটি উদাহরণ: তালিকা (লিস্ট)
আরো দেখুন
সংজ্ঞা