ในท้ายที่สุดแล้วโปรแกรมทั้งหมดของเรามีโครงสร้าง นั่นคือมันไม่สำคัญว่าเราจะสร้างมันให้บริสุทธิ์หรือใช้ประโยชน์ได้อย่างไร - พวกมันถูกแปลเป็นชุดประกอบเสมอดังนั้นสิ่งที่จริง ๆ แล้วสิ่งที่วิ่งอยู่หลังหมวกคือคำแนะนำรัฐและลูป พวกเราเลียนแบบ FP
ในฐานะที่เป็นฮาร์ดแวร์ noob คำถามของฉันคือ: ทำไมเราไม่ใช้สถาปัตยกรรมคอมพิวเตอร์ที่คำนวณสิ่งต่าง ๆ ในรูปแบบที่ใช้งานได้จริง? ตัวอย่างเช่นคอมพิวเตอร์อาจประกอบด้วย "functional chips" ดั้งเดิมเช่น "concat", "map" และ "ลด" และโปรแกรมจะบอกคอมพิวเตอร์ว่าจะไหลของข้อมูลระหว่างชิปเหล่านั้นอย่างไรเพื่อคำนวณผลลัพธ์ที่ต้องการ เช่นในภาษาที่ต่อกัน
สิ่งนี้ไม่สมเหตุสมผล แต่อาจแสดงสิ่งที่ฉันคิด
if we could make a specialized chip for Filter, for example, it would need just a single clock for a Filter operation.
ไม่ใช่เพราะตัวกรองไม่ใช่ "การดำเนินการ"; มันเป็นฟังก์ชั่นที่มีลำดับสูงกว่าซึ่งใช้การดำเนินงานภายนอกโดยพลการกับรายการ คุณไม่สามารถลดสิ่งนั้นลงในหนึ่งรอบนาฬิกาได้