मैं हाल ही में बहुत सोच रहा हूं कि कैसे सी ( नहीं सी ++) में कार्यात्मक प्रोग्रामिंग करने के बारे में जाना जाए । जाहिर है, सी एक प्रक्रियात्मक भाषा है और वास्तव में कार्यात्मक प्रोग्रामिंग का समर्थन नहीं करती है।
क्या कोई संकलक / भाषा एक्सटेंशन हैं जो भाषा के लिए कुछ कार्यात्मक प्रोग्रामिंग निर्माण जोड़ते हैं? जीसीसी एक भाषा विस्तार के रूप में नेस्टेड कार्य प्रदान करता है ; नेस्टेड फ़ंक्शंस वैरिएबल को पैरेंट स्टैक फ्रेम से एक्सेस कर सकते हैं, लेकिन यह अभी भी परिपक्व क्लोजर से काफी दूर है।
उदाहरण के लिए, एक चीज जो मुझे लगता है कि सी में वास्तव में उपयोगी हो सकती है वह यह है कि कहीं भी एक फ़ंक्शन पॉइंटर की उम्मीद की जाती है, आप एक लंबर अभिव्यक्ति को पारित करने में सक्षम हो सकते हैं, एक क्लोजर बना सकते हैं जो फ़ंक्शन पॉइंटर में बदल जाता है। C ++ 0x में लैम्ब्डा एक्सप्रेशन (जो मुझे लगता है कि कमाल है) को शामिल करने जा रहा है; हालाँकि, मैं सी पर लागू उपकरणों की तलाश कर रहा हूँ।
[संपादित करें] स्पष्ट करने के लिए, मैं सी में एक विशेष समस्या को हल करने की कोशिश नहीं कर रहा हूं जो कार्यात्मक प्रोग्रामिंग के लिए अधिक अनुकूल होगा; मैं केवल इस बारे में उत्सुक हूं कि यदि मैं ऐसा करना चाहता हूं तो कौन से उपकरण हैं।