ইলিক্সারে আমাদের মানচিত্র রয়েছে:
> map = %{:a => "one", :b => "two"} # = %{a: "one", b: "two"}
> map.a # = "one"
> map[:a] # = "one"
আমাদের কীওয়ার্ড তালিকাগুলিও রয়েছে:
> kl = [a: "one", b: "two"] # = [a: "one", b: "two"]
> kl2 = [{:a, "one"},{:b, "two"}] # = [a: "one", b: "two"]
> kl == kl2 # = true
> kl[:a] # = "one"
> kl.a # = ** (ArgumentError)
দুজনেই কেন?
বাক্য গঠন? এটি কি কারণ কীওয়ার্ড তালিকাগুলিতে আরও নমনীয় সিনট্যাক্স রয়েছে যা তাদের কোঁকড়া ছাড়া এবং এমনকি বন্ধনী ছাড়াই কোনও ফাংশন কলের শেষ প্যারাম হিসাবে সংজ্ঞায়িত করা যায়? তাহলে মানচিত্রগুলিকে এই সিনট্যাকটিক চিনি দিচ্ছেন না কেন?
নকল কী? মূলশব্দ তালিকাগুলিতে নকল কী থাকতে পারে বলেই এটি? আপনি উভয় মানচিত্রের স্টাইল অ্যাক্সেস এবং নকল কীগুলি চান?
কর্মক্ষমতা? কীওয়ার্ড তালিকাগুলির আরও ভাল পারফরম্যান্স হওয়ার কারণে এটি? তাহলে মানচিত্র কেন? এবং মানচিত্রগুলি টিউপসগুলির তালিকার চেয়ে কী দ্বারা সদস্যদের সন্ধানে আরও পারফরম্যান্স হওয়া উচিত নয়?
জেএস অ্যারে এবং রুবি হ্যাশের চেহারা কেমন? এইটাই কি সেইটা?
আমি বুঝতে পারি যে কাঠামোগতভাবে এগুলি বিভিন্ন উপাত্তের উপস্থাপনা। আমার কাছে মনে হচ্ছে এলিক্সারে কীওয়ার্ড তালিকাগুলি ব্যতিক্রমী সিনট্যাক্স (3 টি আলাদা সিনট্যাক্টিক ভেরিয়েন্ট) এর মাধ্যমে ভাষাটিকে জটিল করে তোলে, মানচিত্রের সাথে কেস ওভারল্যাপ ব্যবহার করে এবং একটি অস্পষ্ট সুবিধা।
কীওয়ার্ড তালিকাগুলি ব্যবহার করে কী লাভ?