2012-04-03 11 views
26

मैं सिर्फ हास्केल में कार्यात्मक प्रतिक्रियाशील प्रोग्रामिंग की दुनिया में देखना शुरू कर रहा हूं, और मैं एक प्रतिक्रियात्मक सेटिंग में जीयूआई प्रोग्रामिंग (gtk के साथ, पर्याप्त बाध्यकारी के कारण) के साथ प्रयोग करना चाहता हूं।कौन सी एफआरपी पैकेज चुनने के लिए?

अब, मैं अंगूर, प्रतिक्रियाशील-केला और बस्टर में थोड़ा सा देख रहा हूं, और मुझे किसी एक या अन्य पैकेज का उपयोग करने के आनंद/डरावनी के लिए कोई भी नियम चाहिए।

मेरे पास इन प्रारंभिक oppinions है:

  • मैं अपने आप को जीटीके के लिए एफआरपी पैकेज के बंधन में से कुछ कर कोई आपत्ति नहीं है, जैसा कि मैंने पृथक बैकएंड विचार के बारे में एक ambivalet लग रहा है (अर्थात अंगूर का है) ..

  • मैं प्रकार सिद्धांत दिलचस्प है, मैं भी सरल एन्कोडिंग वास्तविक प्रोग्राम है, जो डाल करने के लिए लगता है के लिए मूल्य grapfruit-रिकॉर्ड थोड़ा दूर ..

यह है कि, जब तक आप में से कुछ मुझे अन्यथा सोचने के लिए राजी नहीं करते हैं :-)

+4

"graprefuit" और "प्रतिक्रियाशील-केले"? क्या एफआरपी और फल के बीच कुछ विशेष संबंध है? –

+1

@benw: मेरा मानना ​​है कि "केला" भाग एक पेपर का संदर्भ है जो मुझे सबसे ज्यादा मनोरंजक शीर्षकों में से एक है: [केले, लेंस, लिफाफे और बरबेदार वायर के साथ कार्यात्मक प्रोग्रामिंग] (http://research.microsoft।com/en-us/उम/लोग/emeijer/पत्रों/fpca91.pdf)। – hammar

+1

@hammar: हाहा, अच्छा! असल में, मैंने अलग-अलग कारणों से "केला" नाम चुना है, लेकिन मुझे एक उल्लेख पसंद है। –

उत्तर

18

यदि आप नियमित रूप से नियमित एफआरपी का उपयोग करना चाहते हैं, और इसके ऊपर "पूर्व-निर्मित" अमूर्तता का उपयोग करने के बजाय जीयूआई ढांचे के करीब रहें , प्रतिक्रियाशील-केले मेरी राय में सबसे व्यवहार्य विकल्प है। यह स्पष्ट रूप से मौजूदा ढांचे के लिए बाध्यकारी के आसपास तैयार है, जिसे "असली दुनिया" उपयोग के लिए डिज़ाइन किया गया है (कुछ प्रयोगात्मक, अर्थात् ऐसा नहीं कर रहा है, जो समस्याएं पैदा कर सकता है), और इसी तरह।

आप प्रतिक्रिया-केले के लिए एक घटना-आधारित ढांचे को बांधने के तरीके को देखने के लिए reactive-banana-wx पर एक नज़र डाल सकते हैं। यह बहुत सरल है; मैंने एक बार Gtk2Hs को त्वरित बाध्यकारी लिखा (दुर्भाग्यवश कोड अब खो गया), और फ़ाइल 50 से अधिक लाइनों पर नहीं गई। यह प्रतिक्रियाशील-केले-डब्ल्यूएक्स कोड का लगभग प्रत्यक्ष लिप्यंतरण था।

मैं सीधा कारण यह है कि hasn't been updated since 2009 के लिए, बस्टर का उपयोग कर के खिलाफ की सिफारिश करेंगे, और GHC पर निर्माण नहीं करता है 7.

अन्य "उत्पादन" उन्मुख एफआरपी चौखटे हैं sodium (, प्रतिक्रियाशील-केले के समान है, लेकिन इसमें dynamic event switching है (जो coming to reactive-banana soon है, लेकिन अभी तक नहीं है) और समरूपता के लिए "विभाजन" की अवधारणा है, हालांकि, यह अभी बाहर आ गया है और अभी तक गोद लेने को नहीं देखा है) और netwire (तीरंदाज एफआरपी, काफी अलग प्राणी प्रतिक्रियाशील-केले और सोडियम)।

+2

अद्यतन: स्विचिंग 0.7.0.0 – AndrewC

+1

के रूप में प्रतिक्रियाशील केला में है (हालांकि, हेनरिक अपफेलमस अभी भी (2013.06.20) [काम कर रहा है] (http://stackoverflow.com/questions/15396038/dynamic-event-switching- इन-रिएक्टिव-केला-कारण-गंभीर-रिसाव # टिप्पणी 24927049_15396038) गतिशील घटना स्विचिंग का कचरा संग्रह, इसलिए इस समय सावधानी के साथ उपयोग करें।) – AndrewC

12

मैं खुद एफआरपी के साथ प्रयोग कर रहा हूं और अब तक केवल मेरे लिए काम करने वाला एकमात्र प्रतिक्रियाशील-केला है। मैंने कभी भी ग्रेपफ्रूट या अन्य लोगों में नहीं देखा क्योंकि वे पुराने थे और ऐसा प्रतीत नहीं होता था कि उन्हें अपडेट या समर्थित होने की संभावना है। मैंने संक्षेप में नेटवायर को देखा, लेकिन स्पष्ट रूप से इसमें सभी तीर सिद्धांत ने मुझे दूर कर दिया और मुझे यह भी पता चला कि साधारण चीजें कैसे करें।

इसके विपरीत मैंने प्रतिक्रियाशील-केले में लिखे गए एसडीएल को बाइंडिंग का एक बहुत अच्छा सेट प्राप्त करने में कामयाब रहा है, जिस तरह से कुछ ही हिचकी हैं। प्रतिक्रियाशील-केले के पक्ष में एक और बात यह है कि हेनरिक समुदाय में बहुत सक्रिय है और जब आप समस्याओं में भाग लेते हैं तो अक्सर सहायक उत्तर प्रदान करेंगे। बस यहां विभिन्न प्रतिक्रिया-केले प्रश्नों को देखें और आप देखेंगे कि उन्होंने उनमें से कुछ को जवाब दिया है और वह आमतौर पर हास्केल मेलिंग सूचियों में एफआरपी चर्चाओं में बहुत सक्रिय हैं।

+1

विचार किए गए उत्तर कभी-कभी आपको वही चाहिए जो आपको चाहिए! धन्यवाद! –

संबंधित मुद्दे