मैं कार्यात्मक प्रोग्रामिंग सीख रहा हूं, और एक कार्यात्मक शैली में कुछ समस्याओं को हल करने की कोशिश की है। कार्यों में मेरी समस्या को विभाजित करते समय, मैंने अनुभव किया था, ऐसा लगता था कि मेरे पास दो विकल्प थे: समान पैरामीटर सूचियों के साथ कई अलग-अलग कार्यों का उपयोग करें, या नेस्टेड फ़ंक्शंस का उपयोग करना, जो बंद होने के रूप में, केवल मूल कार्य में बाइंडिंग का संदर्भ ले सकते हैं।नेस्टेड फ़ंक्शंस: साइड इफेक्ट्स का अयोग्य उपयोग?
हालांकि मैं दूसरे दृष्टिकोण के साथ जा रहा था, क्योंकि यह फ़ंक्शन कॉल को छोटा करता था और ऐसा लगता है कि मेरे पढ़ने से बेहतर महसूस होता है, ऐसा लगता है कि मैं कार्यात्मक प्रोग्रामिंग के मुख्य बिंदुओं में से एक को याद कर सकता हूं, उसमें यह "दुष्प्रभाव" लगता है? अब दिया गया है, इन घोंसले वाले कार्यों बाहरी बाइंडिंग को संशोधित नहीं कर सकते हैं, क्योंकि जिस भाषा का मैं उपयोग कर रहा था, उसे रोकता है, लेकिन यदि आप प्रत्येक आंतरिक कार्य को देखते हैं, तो आप यह नहीं कह सकते कि "एक ही पैरामीटर दिए गए हैं, यह फ़ंक्शन एक ही परिणाम देगा" क्योंकि वे माता-पिता के दायरे से चर का उपयोग करते हैं ... क्या मैं सही हूँ?
आगे बढ़ने का वांछनीय तरीका क्या है?
धन्यवाद!
facHelper वास्तव में किसी बाहरी मूल्य का संदर्भ नहीं देता है - यह अभी भी पूरी तरह कार्यात्मक है। –