पृष्ठ "उन्नत योजना: कुछ शरारती बिट्स" बताता है:
निरंतरता एक शक्तिशाली नियंत्रण-प्रवाह निर्माण है जिसमें से लगभग किसी भी अन्य नियंत्रण-प्रवाह संरचना [...] को प्राप्त किया जा सकता है।
मुझे लगा कि call/cc
पीटर लैंडिन के जे ऑपरेटर से संबंधित (*) स्कीम का इस्तेमाल किसी भी ज्ञात नियंत्रण प्रवाह संरचना को लागू करने के लिए किया जा सकता है ?
"नियंत्रण प्रवाह संरचना" के साथ, मैं विशेष रूप से उनके बारे में विकिपीडिया के विवरण के बारे में सोच रहा हूं , उदाहरण के लिए, कोरआउट, हरे धागे और इतने पर।
विशेष रूप से, क्या नियंत्रण प्रवाह संरचनाओं के कोई उदाहरण हैं जिनका उपयोग करके लागू नहीं किया जा सकता है call/cc
?
(*) मैं किसी भी पेपर को खोदने में सक्षम नहीं है जो स्थापित करता call/cc
है कि जे ऑपरेटर जितना शक्तिशाली है। फेलिएसेन का एक पेपर (जिसे मैंने पढ़ा नहीं है और इसे व्यक्तिगत रूप से समझने में समस्या है) पूरी तरह से इसकी पड़ताल करता है, और यह निष्कर्ष निकालता है कि भले ही वे विभिन्न जटिलता वर्गों में हैं, वे औपचारिक रूप से समकक्ष हैं।
(यह भी ध्यान दें कि मैंने नीचे टिप्पणी के आधार पर प्रश्न को अद्यतन किया है)
अपडेट करें
@ नीचे दिए गए उत्कृष्ट उत्तर के आधार पर, मैंने उन साइटों को देखा है जो सीमांकित और अनकल्ड सीमेन्ट पर टिप्पणी कर रहे हैं , और यह वास्तव में ऐसा प्रतीत होता है कि जबकि call/cc
, सीमांकित किया जा रहा है, पर्याप्त नहीं है। इस बीच, प्रथम-श्रेणी, सीमांकित निरंतरता (जैसे shift/reset
) का उपयोग किया जा सकता है, ऐसा लगता है, किसी भी नियंत्रण-प्रवाह संरचना को व्यक्त करने के लिए।
call/cc
जा सकता है । (जैसा कि थिएलेके इंगित करने के लिए आगे बढ़ता है, अपवादों को दो निरंतरताओं के आसपास से गुजरते हुए लागू किया जा सकता है, एक कार्यक्रम के लिए और दूसरा अपवाद हैंडलर के लिए, लेकिन इसके लिए अधिक से अधिक आवश्यकता होती है ।)call/cc
amb
-ओपरेटर, और इसी तरह।