তালিকাগুলি বা অ্যারেগুলিতে অপারেশনের জন্য কয়েকটি উচ্চ-আদেশ ক্রিয়াকলাপ বারবার গৃহীত বা পুনর্বিন্যাস করা হয়েছে। ফাংশন মানচিত্র , ভাঁজ [ l | r ] এবং ফিল্টার একাধিক প্রোগ্রামিং ভাষায় যেমন স্কিম, এমএল এবং পাইথনগুলিতে একসাথে পাওয়া যায়, যা সাধারণ পিতৃপরিচয় বলে মনে হয় না। প্রশ্নটি কেন্দ্রীভূত রাখতে আমি এই তিনটি নাম নিয়ে যাচ্ছি।
নামগুলি সর্বজনীন নয় তা দেখানোর জন্য, অন্যান্য ভাষায় সমান কার্যকারিতার জন্য নামের নমুনা এখানে দেওয়া হয়েছে। সি ++ করেছেন রুপান্তর পরিবর্তে মানচিত্র এবং remove_if পরিবর্তে ফিল্টার (সম্পৃক্ত অর্থ reversing)। পাতার মর্মর হয়েছে mapcar পরিবর্তে মানচিত্র , অপসারণ-যদি-না পরিবর্তে ফিল্টার , এবং কমাতে পরিবর্তে ভাঁজ (কিছু আধুনিক পাতার মর্মর রূপগুলো আছে মানচিত্র কিন্তু এই প্রদর্শিত হয় একটি হতে উদ্ভূত ফর্ম ।) সি # ব্যবহার নির্বাচন পরিবর্তে মানচিত্র এবং কোথায় পরিবর্তেফিল্টার । সি # এর নামগুলি এসকিউএল থেকে লিনকুইয়ের মাধ্যমে এসেছিল এবং নাম পরিবর্তনের পরেও তাদের কার্যকারিতা হাস্কেলের দ্বারা প্রভাবিত হয়েছিল যা নিজে এমএল দ্বারা প্রভাবিত হয়েছিল।
নামের মানচিত্র , ভাঁজ এবং ফিল্টার ব্যাপক, তবে সর্বজনীন নয়। এ থেকে বোঝা যায় যে তারা প্রভাবশালী উত্স থেকে অন্যান্য সমসাময়িক ভাষায় orrowণ নিয়েছিল। এই ফাংশন নামগুলি কোথা থেকে এসেছে?
mapcar
একটি মানচিত্র, গাড়ীতে (সিডির চেয়ে)।
filter
ঠিক এটি করে - এটি ডেটা ফিল্টার করে। বেশ সুস্পষ্ট মনে হয়।
map
গাণিতিক সেট তত্ত্ব থেকে আসবে, যা ইনপুট ডোমেন থেকে আউটপুট পরিসরে "ম্যাপিংস" হিসাবে সেট রূপান্তরগুলি বর্ণনা করে।