টাইপ সিস্টেমের জন্য কি একটি অভিব্যক্তিতা শ্রেণিবিন্যাস আছে?


23

জটিলতা তত্ত্বে উপস্থিত বিস্তৃত শ্রেণিবিন্যাস দ্বারা অনুপ্রাণিত হয়ে আমি ভাবলাম যে টাইপ সিস্টেমের জন্যও এই জাতীয় শ্রেণিবিন্যাস উপস্থিত ছিল কিনা? যাইহোক, আমি এখন পর্যন্ত যে দুটি উদাহরণ পেয়েছি সেগুলি হায়ারারচির পরিবর্তে (ক্রমান্বয়ে আরও বেশি এবং আরও অভিব্যক্তিপূর্ণ টাইপ সিস্টেম সহ) চেকলিস্টের মতো (অরথোগোনাল বৈশিষ্ট্যযুক্ত) are

আমি যে দুটি উদাহরণ পেয়েছি তা হ'ল ল্যাম্বদা কিউব এবং কে-র‌্যাঙ্কড পলিমারফিজমের ধারণা । প্রথমটি হ'ল তিনটি বিকল্প সহ একটি চেকলিস্ট, দ্বিতীয়টি হ'ল একটি বাস্তব শ্রেণিবিন্যাস (যদিও কে-এর নির্দিষ্ট মানের জন্য K- র‌্যাঙ্কড অসাধারণ আমি বিশ্বাস করি)। আমি জানি অন্য সমস্ত ধরণের সিস্টেম বৈশিষ্ট্যগুলি বেশিরভাগ অর্থেগোনাল।

আমি এই ধারণাগুলিতে আগ্রহী কারণ আমি আমার নিজস্ব ভাষা ডিজাইন করছি এবং আমি খুব কৌতূহলী যে এটি বর্তমানে বিদ্যমান টাইপ সিস্টেমগুলির মধ্যে কীভাবে আসে (আমার টাইপ সিস্টেমটি কিছুটা অপ্রচলিত, যতদূর আমি জানি)।

আমি বুঝতে পারি যে 'এক্সপ্রেসিভনেস' ধারণাটি কিছুটা অস্পষ্ট হতে পারে, যা টাইপ সিস্টেমগুলি আমার কাছে চেকলিস্টের মতো লাগে বলে তা ব্যাখ্যা করতে পারে।


4
আমি নিশ্চিত যে আরও কঠোর এবং তাত্পর্যপূর্ণ ভাবের তুলনা কেবলমাত্র তাত্ত্বিক ধরণের সিস্টেমের মধ্যেই করা যেতে পারে। আপনি যদি একটি সম্পূর্ণ প্রোগ্রামিং ল্যাঙ্গুয়েজ ডিজাইন করেন তবে আপনি বিদ্যমান ভাষা / ফরমালিজমের সাথে ফিচার বাই বৈশিষ্ট্য তুলনা করতে পারেন। দুর্ভাগ্যক্রমে, অন্যান্য বৈশিষ্ট্যগুলির ক্ষেত্রে যতগুলি বৈশিষ্ট্য এনকোড করা যায়, এটি তুচ্ছ কাজ হবে না। আপনি যদি স্কালার বা হাস্কেলের মতো অভিনব কায়দায় থাকতে পারেন তবে আপনি ভাব প্রকাশের দিক থেকে ভাল করছেন।
ডেভ ক্লার্ক

3
"প্রোগ্রামিং ভাষার সাথে কীভাবে তুলনা করতে পারি" -এ আমার সেই ব্লগ পোস্টটি লিখতে আমার সত্যিই ফিনসিহ করা উচিত ...
আন্দ্রেজ বাউয়ার

@ আন্দ্রেজ বাউয়ার: এখানে ইতিমধ্যে উপস্থিত উত্তর এবং মন্তব্যগুলিতে এটি একটি আকর্ষণীয় সংযোজন হবে। কীভাবে 'এক্সপ্রেরনেস' সংজ্ঞায়িত হতে পারে সে সম্পর্কে আমি ইতিমধ্যে বেশ কিছুটা শিখেছি - সম্ভবত আমাকে তার পরিবর্তে জিজ্ঞাসা করা উচিত ছিল ...
অ্যালেক্স টেন ব্রিঙ্ক

আমি নিশ্চিত যে আমি কয়েক জায়গায় র‌্যাঙ্ক -২ পলিমারফিজম ব্যবহার করেছি। আমার এই মুহুর্তে যেটি মনে আছে সে হ'ল লামেল, পেটন-জোনস, আপনার বয়লারপ্লেট স্ক্র্যাপ করুন, 2003
রাদু গ্রেগোর

2
@ রাদু গ্রেগোর: র‌্যাঙ্ক -২ বহুত্ববাদটি তাৎপর্যপূর্ণ কারণ এটি দ্বিগুণ-বিপরীত অবস্থানে ধরণের যুক্তি প্রদর্শন করতে দেয়, যা সাধারণ ধরণের দ্বৈততার দ্বারা তাদের চার্চ এনকোডিংয়ের মাধ্যমে অস্তিত্বমূলক প্রকারের মডেলিং করতে দেয় । র‌্যাঙ্ক -3 কেবল আবার সর্বজনীন পরিমাপ দেয় এবং এটি সেখান থেকে পরিবর্তিত হয়, তাই তুলনায় সামান্য মত প্রকাশের শক্তি যুক্ত হয়।
সিএ ম্যাকক্যান

উত্তর:


22

"এক্সপ্রেটিভনেস" এর বেশ কয়েকটি সংবেদন রয়েছে যা আপনি কোনও টাইপ সিস্টেমের জন্য চাইতে পারেন।

  1. F

  2. ABFF

  3. AB

  4. এক ধরণের সিস্টেম কি অন্যের চেয়ে শক্তিশালী বৈশিষ্ট্যের গ্যারান্টি দেয়? উদাহরণস্বরূপ, লিনিয়ার টাইপ সিস্টেমগুলি কেবলমাত্র আরও প্রোগ্রাম প্রত্যাখ্যান করে, তবে এটি তাদের গ্রহণযোগ্য প্রোগ্রামগুলি সম্পর্কে শক্তিশালী বক্তব্য দেওয়ার অনুমতি দেয়।

দুর্ভাগ্যক্রমে, আমি বিশ্বাস করি না যে বারেড্রেগেটের ল্যাম্বডা কিউব ব্যতীত এই ধারণাগুলিকে শ্রেণিবদ্ধকরণ বা আনুষ্ঠানিককরণের কাজ হয়েছে, যেমন @ কোডি আলোচনা করেছেন।


3
আমি "Felleisen এর expressiveness কাগজ" দ্বারা অনুমান আপনি তার মানে উপর প্রোগ্রামিং ভাষার ভাবপূর্ণ ক্ষমতা
মার্টিন বার্গার

হ্যাঁ অবশ্যই. আমি সেই উত্তরটি পরিষ্কার করে দিয়েছি
স্যাম টোবিন-হচস্টাডেট

13

আমি নিশ্চিত নই যে আপনার প্রশ্নের সন্তুষ্টিজনক উত্তর আমার কাছে রয়েছে, তবে আপনি যদি শুদ্ধ টাইপ সিস্টেমগুলি বিবেচনা করেন যা ল্যাম্বডা কিউবে পাওয়া সিস্টেমগুলির একটি সাধারণীকরণ (একটি পুঙ্খানুপুঙ্খভাবে, যদি কিছুটা তারিখের পর্যালোচনাটি ক্লাসিক বেরেনড্রেট পাঠ্যে পাওয়া যায়) ) তারপরে শ্রেণিবিন্যাসের কয়েকটি প্রাকৃতিক ধারণা রয়েছে:

  1. ΓA t:TΓB t:TΓ,tT:(,,)পিটিএস এই অর্থে যে প্রতিটি পিটিএস থেকে এটির জন্য একটি আকার রয়েছে। এটি কোনও প্রকারের সিস্টেমের ভাবগাম্ভীরতার পরিমাপ হিসাবে দেখা যেতে পারে, যেখানে চূড়ান্ত পিটিএস সর্বাধিক অভিব্যক্তিপূর্ণ সিস্টেম।

  2. ABAFωECC

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.