14
อะไรทำให้เกิดความนิยมของฟังก์ชั่นแลมบ์ดาในภาษาโปรแกรมกระแสหลักที่ทันสมัย?
ในไม่กี่ปีที่ผ่านมาฟังก์ชั่นนิรนาม (ฟังก์ชั่น AKA แลมบ์ดา) ได้กลายเป็นภาษาที่ได้รับความนิยมอย่างมากและเกือบทุกภาษาหลัก / การเขียนโปรแกรมหลักได้แนะนำพวกเขาหรือมีการวางแผนที่จะแนะนำพวกเขาในการแก้ไขมาตรฐาน แต่ฟังก์ชั่นนิรนามเป็นแนวคิดที่เก่าแก่และเป็นที่รู้จักมากในด้านคณิตศาสตร์และวิทยาการคอมพิวเตอร์ (คิดค้นโดยนักคณิตศาสตร์ Alonzo Church รอบปี 1936 และใช้โดยภาษาการเขียนโปรแกรม Lisp มาตั้งแต่ปี 1958 ดูที่นี่ ) เหตุใดจึงไม่มีภาษาโปรแกรมหลักในปัจจุบัน (หลายภาษาซึ่งมีต้นกำเนิดเมื่อ 15 ถึง 20 ปีก่อน) รองรับฟังก์ชั่นแลมบ์ดาตั้งแต่เริ่มแรกและนำมาใช้ภายหลังเท่านั้น และสิ่งที่กระตุ้นให้เกิดการยอมรับฟังก์ชั่นที่ไม่ระบุชื่อขนาดใหญ่ในไม่กี่ปีที่ผ่านมา? มีเหตุการณ์เฉพาะความต้องการใหม่หรือเทคนิคการเขียนโปรแกรมที่เริ่มปรากฏการณ์นี้หรือไม่? โน๊ตสำคัญ จุดเน้นของคำถามนี้คือการแนะนำฟังก์ชั่นที่ไม่ระบุชื่อในภาษาสมัยใหม่กระแสหลัก (และอาจมีข้อยกเว้นเล็กน้อยภาษาที่ไม่สามารถใช้งานได้) นอกจากนี้โปรดทราบว่าฟังก์ชั่นที่ไม่ระบุชื่อ (บล็อก) มีอยู่ใน Smalltalk ซึ่งไม่ใช่ภาษาที่ใช้งานได้และฟังก์ชั่นที่มีชื่อปกตินั้นมีอยู่ในภาษาขั้นตอนเช่น C และ Pascal เป็นเวลานาน โปรดอย่าทำให้คำตอบของคุณมากเกินไปโดยการพูดถึง "การยอมรับกระบวนทัศน์การทำงานและประโยชน์ของมัน" เพราะนี่ไม่ใช่หัวข้อของคำถาม