একটি তাত্ত্বিক কম্পিউটার বিজ্ঞান সাইটে পূর্ববর্তী উত্তর , আমি তাকে বললাম যে বিভাগ তত্ত্ব টাইপ তত্ত্বের "ভিত্তি" হয়। এখানে, আমি আরও শক্তিশালী কিছু বলতে চাই। বিভাগ তত্ত্বটি টাইপ থিওরি । বিপরীতে, টাইপ তত্ত্বটি বিভাগের তত্ত্ব । আমাকে এই বিষয়গুলিতে প্রসারিত করুন
বিভাগ তত্ত্বটি টাইপ থিওরি
চ: এ → বিABf
ABf
প্রকারের তত্ত্বটি বিভাগের তত্ত্ব
"টাইপ থিওরি" দ্বারা, আমি শব্দ-গঠনের কঠোর নিয়মের ভিত্তিতে যে কোনও ধরণের টাইপড আনুষ্ঠানিক ভাষা বোঝাতে চাইছি যা নিশ্চিত করে যে সবকিছু টাইপ করে কিনা। দেখা যাচ্ছে যে আমরা যখনই এ জাতীয় ভাষায় কাজ করি তখন আমরা একটি বিভাগ-তাত্ত্বিক কাঠামোয় কাজ করি। এমনকি যদি আমরা সেট-তাত্ত্বিক স্বরলিপি ব্যবহার করি এবং সেট-তাত্ত্বিকভাবে চিন্তা করি, তবুও আমরা স্টাফ লিখতে শেষ করি যা স্পষ্টভাবে বোঝায় sense এটি একটি আশ্চর্যজনক সত্য ।
.তিহাসিকভাবে, ডানা স্কট সম্ভবত এটি উপলব্ধি হতে পারে। তিনি টাইপড (এবং টাইপযুক্ত) ল্যাম্বদা ক্যালকুলাসের উপর ভিত্তি করে প্রোগ্রামিং ল্যাঙ্গুয়েজের সিমেটিক মডেল তৈরিতে কাজ করেছিলেন। প্রচলিত সেট-তাত্ত্বিক মডেলগুলি এই উদ্দেশ্যে অপ্রতুল ছিল, কারণ প্রোগ্রামিং ভাষাগুলিতে সীমাহীন পুনরাবৃত্তি জড়িত যা তত্ত্বের অভাবে সেট করে। স্কট প্রোগ্রামিং ঘটনাগুলি ক্যাপচার করে এমন একাধিক শব্দার্থক মডেল আবিষ্কার করেছিলেন এবং উপলব্ধি করতে পেরেছিলেন যে টাইপ করা ল্যাম্বদা ক্যালকুলাস হুবহু কার্টেসিয়ান ক্লোজড ক্যাটাগরি নামে পরিচিত শ্রেণির একটি শ্রেণির প্রতিনিধিত্ব করে । প্রচুর কার্তেসিয়ান ক্লোজড বিভাগ রয়েছে যা "সেট-থিওরেটিক" নয়। তবে টাইপড ল্যাম্বদা ক্যালকুলাস তাদের সকলের জন্য সমানভাবে প্রযোজ্য। স্কট " ল্যাম্বডা ক্যালকুলাসের সাথে সম্পর্কিত তত্ত্বগুলি " নামে একটি দুর্দান্ত প্রবন্ধ লিখেছিলেন"কী চলছে তা ব্যাখ্যা করে, যার কিছু অংশ ওয়েবে উপলব্ধ বলে মনে হচ্ছে The মূল নিবন্ধটি" টু এইচবি কারি: রচনা অন সংযুক্তি যুক্তি, ল্যাম্বদা ক্যালকুলাস এবং ফর্মালিজম "নামে একটি খণ্ডে প্রকাশিত হয়েছিল, একাডেমিক প্রেস, ১৯৮০। বেরি এবং কুরিয়েন সম্ভবত একইভাবে উপলব্ধি করতে পেরেছিলেন, সম্ভবত স্বাধীনভাবেই They তারা এই ধারণাগুলি কার্যকরী ভাষাগুলি বাস্তবায়নে ব্যবহার করার জন্য একটি শ্রেণিবদ্ধ অ্যাবস্ট্রাক্ট মেশিন (সিএএম) সংজ্ঞায়িত করেছিলেন এবং তারা যে ভাষায় প্রয়োগ করেছেন তাকে "সিএএমএল" বলা হয় যা মাইক্রোসফ্টের এফ # এর অন্তর্নিহিত কাঠামো ।
×→Listপলিমারফিক ফাংশনগুলির ধারণাটি যথাযথভাবে আনতে। তারা তাদেরকে "প্রাকৃতিক রূপান্তর", "প্রাকৃতিক" বলেছিল কারণ তারা কেবলমাত্র টাইপ ভেরিয়েবল ব্যবহার করে টাইপ-সঠিক উপায়ে লিখতে পারে। সুতরাং, কেউ বলতে পারেন যে প্রোগ্রামিং ল্যাঙ্গুয়েজগুলি ভাষা প্রতিষ্ঠার আগেই পলিমারফিক প্রোগ্রামিং ভাষাগুলি আনুষ্ঠানিকভাবে প্রবর্তনের জন্য বিভাগ তত্ত্বটি আবিষ্কার করা হয়েছিল!
কোনও সেট-তাত্ত্বিক traditionalতিহ্যবাদী যখন সেট-তাত্ত্বিক স্বরলিপি ব্যবহার করেন তখন পৃষ্ঠের নীচে যে ফান্টর এবং প্রাকৃতিক রূপান্তরগুলি ঘটে সে সম্পর্কে কোনও জ্ঞান নেই। তবে, যতক্ষণ না তিনি টাইপ সিস্টেমটি বিশ্বস্ততার সাথে ব্যবহার করছেন ততক্ষণ তিনি সেগুলি সম্পর্কে অবগত না হয়ে স্পষ্টতাল নির্মাণ করছেন।
সমস্ত বলা হয়েছে এবং সম্পন্ন হয়েছে, বিভাগের তত্ত্ব হল প্রকার এবং ক্রিয়াকলাপের পঞ্চম গাণিতিক তত্ত্ব। সুতরাং, সমস্ত প্রোগ্রামাররা কিছুটা বিভাগের তত্ত্ব বিশেষত ফাংশনাল প্রোগ্রামারগুলি শিখতে সুবিধা অর্জন করতে পারে। দুর্ভাগ্যক্রমে, প্রোগ্রামারগুলিকে নির্দিষ্ট করে লক্ষ্যযুক্ত শ্রেণির তত্ত্ব সম্পর্কিত কোনও পাঠ্য বই রয়েছে বলে মনে হয় না। "কম্পিউটার বিজ্ঞানের জন্য বিভাগের তত্ত্ব" বইগুলি সাধারণত তাত্ত্বিক কম্পিউটার বিজ্ঞানের শিক্ষার্থী / গবেষকদের লক্ষ্য করে থাকে। কম্পিউটার বিজ্ঞানীদের জন্য বেনজামিন পিয়ার্স, বেসিক বিভাগের তত্ত্বটি বই সম্ভবত তাদের মধ্যে সবচেয়ে পাঠযোগ্য।
তবে ওয়েবে প্রচুর সংস্থান রয়েছে যা প্রোগ্রামারগুলিকে লক্ষ্য করে। Haskellwiki পৃষ্ঠা একটি ভাল আদ্যস্থল হতে পারে। এ মিডল্যান্ডস গ্রাজুয়েট স্কুল , আমরা বিভাগ তত্ত্ব (অন্যদের মধ্যে) বক্তৃতা আছে। গ্রাহাম হাটনের কোর্সটি একটি "শিক্ষানবিশ" কোর্স হিসাবে তৈরি হয়েছিল এবং আমার একটি "অ্যাডভান্সড" কোর্স ছিল। তবে উভয়ই বিভিন্ন গভীরতায় গিয়ে মূলত একই বিষয়বস্তু coverেকে রাখে। চামার্স বিশ্ববিদ্যালয় বিশ্বজুড়ে বই এবং বক্তৃতা নোটগুলির জন্য একটি দুর্দান্ত উত্স পৃষ্ঠা রয়েছে। "Sigfpe" এর উত্সাহী ব্লগ সাইট এছাড়াও একটি দেখুন প্রোগ্রামার এর বিন্দু থেকে ভাল intuitions অনেকটা প্রদান করে।
আপনি যে প্রাথমিক বিষয়গুলি শিখতে চান তা হ'ল:
- বিভাগগুলির সংজ্ঞা এবং বিভাগগুলির কয়েকটি উদাহরণ
- ফান্টেক্টর এবং সেগুলির উদাহরণ
- প্রাকৃতিক রূপান্তর এবং তাদের উদাহরণ
- পণ্যগুলির সংজ্ঞা, কপোড্রাক্টস এবং এক্সপোশন (ফাংশন স্পেস), প্রাথমিক এবং টার্মিনাল অবজেক্ট।
- adjunctions
- monads, বীজগণিত এবং Kleisli বিভাগ
আমার নিজের বক্তৃতা নোট মধ্যে মিডল্যান্ডস গ্রাজুয়েট স্কুল গত এক (monads) ছাড়া এই সব বিষয় জুড়ে। আজকাল মনদেদের জন্য প্রচুর অন্যান্য সংস্থান রয়েছে। সুতরাং এটি কোনও বড় ক্ষতি নয়।
আপনি যত বেশি গণিত জানেন, বিভাগ তত্ত্ব শেখা তত সহজ হবে। যেহেতু বিভাগ তত্ত্ব গাণিতিক কাঠামোর একটি সাধারণ তত্ত্ব, সংজ্ঞাগুলির অর্থ কী তা বোঝার জন্য কয়েকটি উদাহরণ জানার পক্ষে এটি সহায়ক। (আমি যখন বিভাগের তত্ত্বটি শিখেছিলাম তখন প্রোগ্রামিং ভাষার শব্দার্থবিজ্ঞানের জ্ঞানটি ব্যবহার করে আমার নিজস্ব উদাহরণগুলি তৈরি করতে হয়েছিল, কারণ পাঠ্য বইয়ের মধ্যে কেবল গাণিতিক উদাহরণ ছিল, যার সম্পর্কে আমি কিছুই জানতাম না।) তারপরে ল্যামব্যাকের উজ্জ্বল বইটি এসেছিল এবং স্কট " শ্রেণিবদ্ধ যুক্তির ভূমিকা"কোন বিভাগ সম্পর্কিত তত্ত্বটি সিস্টেমগুলি টাইপ করতে (যাকে তারা" যুক্তি "বলে ডাকে) অনেকগুলি উদাহরণ না জেনেও কেবল টাইপ সিস্টেমের সাথে সম্পর্কিত করে এখন বিভাগের তত্ত্বটি বোঝা সম্ভব। আমি উপরে বর্ণিত প্রচুর সংস্থানগুলি এটি ব্যবহার করে বিভাগের তত্ত্ব ব্যাখ্যা করার পদ্ধতির।