สมมติว่าเราต้องการเหตุผลเกี่ยวกับคุณสมบัติของรหัสนอกเหนือจากสิ่งต่าง ๆ เช่นจำนวนทั้งสิ้นและความบริสุทธิ์ในการใช้งาน - เรายังใส่ใจเกี่ยวกับการใช้หน่วยความจำหรือความซับซ้อนของอัลกอริทึมของฟังก์ชัน สามารถทำได้ผ่านระบบการพิมพ์และเอฟเฟกต์แบบพึ่งพาหรือไม่
สมมติว่าเราต้องการเหตุผลเกี่ยวกับคุณสมบัติของรหัสนอกเหนือจากสิ่งต่าง ๆ เช่นจำนวนทั้งสิ้นและความบริสุทธิ์ในการใช้งาน - เรายังใส่ใจเกี่ยวกับการใช้หน่วยความจำหรือความซับซ้อนของอัลกอริทึมของฟังก์ชัน สามารถทำได้ผ่านระบบการพิมพ์และเอฟเฟกต์แบบพึ่งพาหรือไม่
คำตอบ:
ใช่มันสามารถ แม้ว่าแนวคิดจะไม่ยาก แต่ก็ยังไม่ได้รับการศึกษามากนัก แง่มุมหนึ่งของสนามถูกความหมายเสียค่าใช้จ่ายเช่นการวิจัยที่ทำโดยกายเบลลลอค
ในหลอดเลือดดำของวิดีโอ Anton ที่กล่าวถึงคืองานของ Daniellson ในการวิเคราะห์ความซับซ้อนของเวลาแบบกึ่งเบาน้ำหนักเบาสำหรับโครงสร้างข้อมูลที่ใช้งานได้อย่างแท้จริง นี่ใช้ monad เพื่อดำเนินการต่อการดำเนินการ monad ที่คล้ายกันในระดับความหมายที่ใช้ในdenotational ความหมายค่าใช้จ่ายสำหรับการทำงานที่มีภาษาประเภทอุปนัย นี่คือ 2016 กระดาษทำบางสิ่งบางอย่างที่คล้ายกันใน Coq, Coq ห้องสมุดสำหรับการตรวจสอบภายในของวิ่งไทม์
คน NuPRL ก็ให้ความสนใจในการทำสิ่งนี้มานานแล้ว ในการแสดงความซับซ้อนของการคำนวณในทฤษฎีประเภทก่อสร้างซึ่งโดยทั่วไปจะมีจำนวนการคำนวณมากกว่าความหมายการดำเนินงานที่มีโครงสร้าง จุดที่น่าสนใจยิ่งกว่าคือคุณสามารถสะท้อนความหมายของภาษาเป็นภาษาได้ ตัวอย่างในส่วนสุดท้าย, ส่วนที่ 12, ของNaive Computational Type Theoryแสดงให้เห็นและอธิบายสิ่งเหล่านี้