6
ฟังก์ชั่น pure ที่ถูกบันทึกไว้นั้นถือว่าตัวเองบริสุทธิ์หรือไม่?
สมมติว่าเป็นฟังก์ชั่นบริสุทธิ์ที่ทำบางสิ่งที่มีราคาแพงเช่นการกลับรายการปัจจัยสำคัญของfn(x)x และขอบอกว่าเราทำให้รุ่น memoized memoizedFn(x)ของฟังก์ชั่นเดียวกันที่เรียกว่า มันจะส่งกลับผลลัพธ์เดียวกันสำหรับอินพุตที่กำหนด แต่จะเก็บแคชส่วนตัวของผลลัพธ์ก่อนหน้าเพื่อปรับปรุงประสิทธิภาพ การพูดอย่างเป็นทางการmemoizedFn(x)ถือว่าบริสุทธิ์หรือไม่ หรือมีชื่ออื่นหรือคำที่มีคุณสมบัติเหมาะสมที่ใช้เพื่ออ้างถึงฟังก์ชั่นดังกล่าวในการสนทนาของ FP? (เช่นฟังก์ชั่นที่มีผลข้างเคียงที่อาจส่งผลกระทบต่อความซับซ้อนในการคำนวณของการโทรครั้งต่อไป แต่อาจไม่ส่งผลกระทบต่อค่าส่งคืน)