TL; DR; ประเภทเป็นนามธรรมที่ครอบคลุมมากกว่าความต่อเนื่อง
ความต่อเนื่องคือชนิดของอินพุตและเอาต์พุต
สิ่งที่ใกล้เคียงที่สุดที่คุณจะพบกับความต่อเนื่องที่ไม่ใช่ขั้นตอนนั้นน่าจะเป็นmonad แบบต่อเนื่องใน Haskellเนื่องจากมันแสดงเป็นประเภทซึ่งอาจมีการใช้ฟังก์ชั่นจำนวนมากเพื่อโต้ตอบกับประเภทนั้นเพื่อขัดจังหวะเรซูเม่ย้อนหลังและอื่น ๆ
คุณสามารถแค็ปซูลปิดในประเภทเช่นCont
ประเภทใน Haskell ที่คุณได้รับสิ่งที่เป็นนามธรรม monad เป็น "abstraction ระดับที่สูงขึ้น" และมีรูปแบบอื่น ๆ ของสิ่งที่เป็นนามธรรมเหนือสิ่งที่คุณได้รับเมื่อคุณมองความต่อเนื่องเป็นประเภทแทน เพียงขั้นตอนตัวอย่างเช่น
- คุณสามารถดำเนินการสองอย่างและทำทางเลือกระหว่างพวกเขาหากประเภทเป็นไปตามกฎหมายว่าเป็นเรื่องไร้สาระ
- คุณสามารถนามธรรมมากกว่าประเภทที่จะเปลี่ยน input หรือ output ประเภทของความต่อเนื่องถ้าคุณแค็ปซูลปิดในประเภทนั้นปฏิบัติตามกฎหมายของ a functor
- คุณสามารถใช้หรือประดับตกแต่งความต่อเนื่องของคุณโดยพลการและบางอย่างเช่นการตรวจสอบอินพุตหรือการแปลงอินพุตหากคุณใส่แค็ปซูเลชั่นปิดในรูปแบบที่เป็นไปตามกฎหมายของfunctor ที่ใช้งาน
การปิดกิจการ
ในตอนท้ายของวันคุณถูกต้องโดยทั่วไป; ความต่อเนื่องเป็น "ขั้นตอน" แม้ว่าฉันอยากจะเรียกมันว่าเป็นการปิด บ่อยครั้งที่การแสดงผลต่อเนื่องที่ดีที่สุดเป็นการปิดคลาสที่ล้อมรอบสภาพแวดล้อมที่ถูกผูกไว้ ในภาษาที่ใช้งานได้จริงคุณอาจพูดว่านี่ไม่สมเหตุสมผลโดยเฉพาะเพราะคุณไม่มีการอ้างอิง สิ่งนี้เป็นจริง แต่คุณสามารถใส่ค่าและการมอบหมายเดี่ยวทำให้การใส่ค่ากับการอ้างอิงเป็นสิ่งเดียวกัน สิ่งนี้ก่อให้เกิดใน Haskell:
(\x -> \y -> insideYIcanAccess x (and y))
ภาษาที่ขาดความสามารถในการล้อมรอบสภาพแวดล้อมที่มีผลผูกพันทางเทคนิคอาจไม่มีการปิดชั้นหนึ่งในทางเทคนิค แต่ถึงอย่างนั้นก็มีสภาพแวดล้อมบางอย่าง (โดยทั่วไปคือทั่วโลก) ซึ่งมีให้สำหรับการปิด
ดังนั้นฉันจะบอกว่าถูกต้องมากขึ้นในการอธิบายความต่อเนื่องว่า: การปิดการใช้งานในรูปแบบเฉพาะ
ข้อสรุป
สำหรับคำถามของ"ความต่อเนื่องสามารถนำไปใช้ในทางอื่นนอกเหนือจากกระบวนการได้หรือไม่" ไม่ถ้าคุณไม่มีฟังก์ชั่นเฟิร์สคลาสคุณไม่สามารถดำเนินการต่อเนื่องได้เช่นกัน (ใช่ตัวชี้ฟังก์ชั่นนับเป็นฟังก์ชั่นเฟิร์สคลาส
ตอนนี้กับคำถามของ"มีวิธีใดบ้างที่จะแสดงความต่อเนื่องในทางที่เป็นนามธรรมมากกว่าขั้นตอน?" การแสดงเป็นประเภทช่วยให้คุณมีความคิดที่เป็นนามธรรมมากยิ่งขึ้นช่วยให้คุณรักษาความต่อเนื่องในรูปแบบทั่วไปโดยที่คุณสามารถโต้ตอบกับความต่อเนื่องได้หลายวิธีมากกว่าแค่ดำเนินการ