ฉันสนใจที่จะเข้าใจอย่างถ่องแท้เกี่ยวกับการพิมพ์แบบพึ่งพา ฉันได้อ่านมากที่สุดของ TaPL และอ่าน (ถ้าไม่ดูดซึมได้อย่างเต็มที่) 'ขึ้นอยู่กับประเภทในATTaPL ฉันยังอ่านและอ่านบทความต่าง ๆ ที่เกี่ยวข้อง
การอภิปรายเชิงทฤษฎีหลายประเภทดูเหมือนว่าจะมุ่งเน้นไปที่การเพิ่มคุณสมบัติที่เพิ่มขึ้นให้กับระบบประเภทก่อนหน้านี้ไม่ใช่ "การวางนัยทั่วไปขนาดใหญ่ถัดไปคืออะไรจากระบบประเภท X" ประเภทที่อ้างถึงดูเหมือนจะเป็นลักษณะทั่วไปขนาดใหญ่ต่อไปจาก System F แต่ฉันยังไม่พบภาษาที่ใช้งานง่าย การอ้างอิงหลายอย่างเกี่ยวกับแคลคูลัสของการสร้าง (อุปนัย) ทำให้ฉันคิดว่า CoC เป็นภาษานั้น แต่คำอธิบายของภาษาที่ฉันได้เห็นดูเหมือนจะไม่ชัดเจนหรือใช้งานง่ายสำหรับฉัน
ฉันคาดหวัง / คาดเดาภาษาดังกล่าวจะมีคุณสมบัติดังนี้: (และโปรดแจ้งให้เราทราบหากมีสิ่งใดที่กระโดดออกมาโดยเฉพาะอย่างยิ่งสับสนหรือไม่สมจริง)
- สรุปนามธรรม (สามารถมีฟังก์ชั่นจากโดเมนใด ๆ ในลำดับชั้นของประเภทเพื่ออื่น ๆ ชนิด -> คำ, คำ -> ประเภท '' 'ฯลฯ )
- มีลำดับชั้นการพิมพ์ที่ไม่ จำกัด (คำ: ประเภท: ประเภท ': ประเภท' ': ... )
- จำนวนองค์ประกอบพื้นฐานขั้นต่ำ ฉันจินตนาการว่าภาษานั้นอ้างถึงองค์ประกอบเดียวสำหรับแต่ละระดับเท่านั้น ตัวอย่างเช่นอาจยืนยันว่า ((): หน่วย: ประเภท: ประเภท ': ... ) องค์ประกอบอื่น ๆ ถูกสร้างขึ้นจากองค์ประกอบเหล่านี้
- สามารถหาผลรวมและชนิดของผลิตภัณฑ์ได้
ฉันกำลังมองหาคำอธิบายของภาษาที่จะกล่าวถึง:
- ความสัมพันธ์ระหว่างสิ่งที่เป็นนามธรรมและปริมาณในภาษานั้น หากพวกเขาไม่รวมเป็นหนึ่งเดียวให้อธิบายว่าทำไมพวกเขาถึงไม่รวมเป็นหนึ่ง
- ลำดับชั้นชนิดไม่สิ้นสุดอย่างชัดเจน
ฉันถามคำถามนี้เพราะฉันต้องการเรียนรู้ทฤษฎีแบบพึ่งพา แต่ยังเพราะฉันต้องการที่จะรวบรวมคำแนะนำที่สมมติว่ามีพื้นหลัง CS เล็ก ๆ สอนการใช้และวิธีการทำความเข้าใจผู้ช่วยพิสูจน์และภาษาที่พิมพ์อย่างพึ่งพาอาศัยกัน