এরিক লিপার্টের নিবন্ধে হাঙ্গেরিয়ান নোটেশনের সাথে কী চলছে? , তিনি বলেছেন যে হাঙ্গেরিয়ান নোটেশনের উদ্দেশ্য (ভাল ধরণের)
স্টোরেজ প্রতিনিধিত্ব তথ্য ছাড়াও শব্দার্থক তথ্য অন্তর্ভুক্ত করতে "টাইপ" ধারণাটি প্রসারিত করুন।
একটি সাধারণ উদাহরণটি এমন কোনও ভেরিয়েবলের উপসীকরণ করা হবে যা "এক্স" এর সাথে এক্স-কোঅর্ডিনেটের প্রতিনিধিত্ব করে এবং একটি ভেরিয়েবল যা "ওয়াই" এর সাথে ওয়াই-কোঅর্ডিনেটের প্রতিনিধিত্ব করে, সেই ভেরিয়েবলগুলি পূর্ণসংখ্যা বা ভাসমান বা যাই হোক না কেন, আপনি যখন দুর্ঘটনাক্রমে লেখেন xFoo + yBar
কোডটি স্পষ্টতই ভুল দেখাচ্ছে।
তবে আমি হাস্কেলের টাইপ সিস্টেমটি সম্পর্কেও পড়ছি এবং মনে হয় যে হাস্কেল-এ কেউ একই জিনিস অর্জন করতে পারে (অর্থাত "শব্দার্থক তথ্যকে অন্তর্ভুক্ত করার ধরণের ধারণাটি প্রসারিত করতে পারে") যা সংকলক আপনার জন্য পরীক্ষা করবে actual সুতরাং উপরের উদাহরণে, xFoo + yBar
হাসকল আসলে আপনার কম্পিউটারটি সঠিকভাবে ডিজাইন করলে সংকলন করতে ব্যর্থ হবে, যেহেতু এগুলি বেমানান ধরনের হিসাবে ঘোষণা করা হবে। অন্য কথায়, এটি দেখে মনে হচ্ছে হাস্কেলের টাইপ সিস্টেমটি কার্যকরভাবে হাঙ্গেরিয়ান নোটেশনের সমতুল্য সংকলন-সময় পরীক্ষা করা সমর্থন করে
সুতরাং, হাঙ্গেরিয়ান নোটেশন কি কেবল এমন প্রোগ্রামিং ভাষাগুলির জন্য ব্যান্ড-এইড, যার টাইপ সিস্টেমগুলি সিনেমিক তথ্যগুলি এনকোড করতে পারে না? বা হাঙ্গেরিয়ান নোটেশন হ্যাস্কেলসের মতো একটি স্ট্যাটিক টাইপ সিস্টেম অফার করতে পারে তার বাইরে কিছু সরবরাহ করে?
(অবশ্যই, আমি একটি উদাহরণ হিসাবে হাস্কেলকে ব্যবহার করছি I'm আমি নিশ্চিত যে একই রকমের মত প্রকাশকারী (ধনী? শক্তিশালী?) প্রকারের সিস্টেমগুলির সাথে অন্যান্য ভাষা রয়েছে, যদিও আমি কোনটিই পাই নি))
স্পষ্ট করা করার জন্য, আমি করছি না সঙ্গে পরিবর্তনশীল নামের টিকা বিষয়ে কথা ডেটা টাইপ, বরং সম্পর্কে তথ্য অর্থ কর্মসূচির প্রেক্ষাপটে ভেরিয়েবলের। উদাহরণস্বরূপ, একটি ভেরিয়েবলটি একটি পূর্ণসংখ্যা বা ভাসমান বা ডাবল বা লম্বা বা যাই হোক না কেন হতে পারে তবে ভেরিয়েবলটির অর্থ এটি ইঞ্চি মাপের একটি আপেক্ষিক এক্স-স্থানাঙ্ক। এই জাতীয় তথ্যটি আমি হাঙ্গেরিয়ান নোটেশনের মাধ্যমে (এবং হাস্কেল প্রকারের মাধ্যমে) এনকোডিংয়ের কথা বলছি।