मैं हाल ही में कोड के बड़े हिस्से को हटा रहा हूं और उन्हें लिनक प्रश्नों के साथ बदल रहा हूं।
भाषा के पूर्वाग्रह को दूर करना - Linq अनिवार्य रूप से मानचित्र / फ़िल्टर और संचालन को कम करने का एक सेट है जो डेटा के अनुक्रम पर काम करता है।
यह मुझे सोच में पड़ गया, मैं सैद्धांतिक रूप से इसे कैसे ले पाऊंगा। क्या मैं पूरे कोड आधार को एक श्रृंखला (या यहां तक कि एकल) के मानचित्र / फ़िल्टर और संचालन को फिर से लिखने में सक्षम होगा।
दुर्भाग्य से मुझे उपयोगी सामान करने के लिए भुगतान किया जाता है, इसलिए मैं बहुत आगे प्रयोग करने में सक्षम नहीं हुआ, लेकिन मैं किसी भी कोड संरचना के बारे में नहीं सोच सकता हूं जो इस तरह से संरचित नहीं किया जा सकता है। साइड इफेक्टेड कोड को मोनाड्स के माध्यम से निपटाया जा सकता है .. यहां तक कि आउटपुट अनिवार्य रूप से मेमोरी एड्रेस को स्क्रीन एड्रेस पर मैप कर रहा है।
क्या ऐसा कुछ भी है जो (सैद्धांतिक रूप से) लिनक क्वेरी के रूप में दोबारा नहीं लिखा जा सकता है?
my_list.map(_ignored => a copy of my_list)
, ऐसा लगता है कि इस तरह के कार्यक्रम का स्थान उपयोग कुछ बहुपद (कार्यक्रम की लंबाई के आधार पर) से घिरा है। तब ऐसी भाषा निश्चित रूप से उन समस्याओं की गणना नहीं कर सकती है जो PSPACE में नहीं हैं। हालाँकि, PSPACE में कई समस्याओं को असाध्य माना जाता है, बड़ी कक्षाओं के लिए कुछ भी नहीं कहना, यह बहुत गंभीर प्रतिबंध नहीं हो सकता है।