λλ
หากเป็นเช่นนั้นเหตุใดจึงเป็นประโยชน์ที่จะใช้ calcul-แคลคูลัสเหนือสัญลักษณ์ฟังก์ชันทั่วไปเพื่อคำนวณเวลารันอัลกอริทึม?
มีข้อดีหลายประการในการใช้ Lisp หรือการเขียนโปรแกรมเชิงฟังก์ชันและการคำนวณเวลาเรียกใช้อัลกอริทึมเป็นเพียงความเป็นไปได้เพียงอย่างเดียว (แม้ว่ามันจะมีประโยชน์ถ้าคุณอ้างการอ้างอิงนั้น) เนื่องจากในสัญกรณ์การทำงานอยู่แล้วบางครั้งการกำหนดสูตรสำหรับเวลาทำงานผ่านการเหนี่ยวนำหรือความสัมพันธ์ที่เกิดซ้ำอาจมีความสัมพันธ์ที่แข็งแกร่งหรือชัดเจนมากขึ้นกับรหัสต้นฉบับ การวิเคราะห์อัลกอริธึมประเภทอื่น ๆ ก็ง่ายขึ้นเช่นกัน
ข้อได้เปรียบที่สำคัญอีกประการหนึ่งคือความง่ายในการสร้างประโยค ตัวแยกวิเคราะห์สำหรับภาษาอื่นนั้นซับซ้อนมาก แต่ตัวแยกวิเคราะห์เสียงกระเพื่อมนั้นง่ายมาก Lisp จึงเป็นภาษาที่ยอดเยี่ยมในการศึกษาทฤษฎีการแยกวิเคราะห์
อีกแง่มุมที่สำคัญคือการวิเคราะห์ซอฟต์แวร์จากมุมมองเชิงตรรกะหรือเชิงคณิตศาสตร์มากกว่ามุมมอง "วิทยาศาสตร์คอมพิวเตอร์"
ในขณะที่คำตอบอื่น ๆ ชี้ให้เห็น Lisp คือทั้งหมดที่เกี่ยวกับการเรียกซ้ำแทนที่จะทำซ้ำและการเรียกซ้ำเป็นหัวใจของ CS
λ
[1] โครงสร้างและการตีความโปรแกรมคอมพิวเตอร์โดย Abelson & Sussman