F #

2009-04-28 9 views
7

में आपने जो सरल, गैर-तुच्छ, उपयोग करने योग्य कोड बनाया है, मैं एफ # सीखने की कोशिश कर रहा हूं, लेकिन चूंकि मैंने कभी भी कोई कार्यात्मक प्रोग्रामिंग नहीं की है या इसमें कोई कक्षा नहीं ली है, मुझे तुच्छ को सामान्य बनाना बहुत कठिन लगता है फाइबोनैकी या फैक्टोरियल उदाहरणों में मैं कुछ उपयोग करने योग्य कैसे करूंगा।F #

तो, नेट पर क्या सरल लेकिन गैर-मामूली और उपयोग करने योग्य एफ # कोड है?

उत्तर

2

जब भी मुझे पार्सर समर्थन की आवश्यकता होती है (आजकल आप इसे डीएसएल कह सकते हैं) और जब भी मैं प्रतीक-प्रोसेसिंग एल्गोरिदम लागू करता हूं, तो इसका उपयोग करना पसंद करता हूं।

एफ # चिंताओं फ़िल्टर में लिखा गया नवीनतम उत्पादक कोड (लॉगिंग सेवा में इनकमिंग संदेशों को फ़िल्टर करने के लिए उपयोग किया जाता है)। मेरे पास कुछ बुनियादी फ़िल्टर हैं (जो विषय को संसाधित करते हैं, आदि) और उच्च-आदेश तर्क फ़िल्टर जो अन्य फ़िल्टर को AND/OR/NOT ऑपरेटरों के साथ जोड़ते हैं। कार्यान्वयन को सरल इस तरह के "भाव" उन्हें, CNF को बदलने के प्रकार को इकट्ठा करने और का उपयोग कर विशेष नियम एक सरल पार्सर इस के शीर्ष पर मैं createt (एक & एक < 10 => एक < 5, आदि) द्वारा इस सेवा के उपयोगकर्ताओं को फ़िल्टर बनाने के लिए एक आसान तरीका देने के लिए fsyacc के साथ।

मुझे लगता है कि छेद चीज के रूप में कोड की कई लाइनों के साथ मैं सी # आवश्यकता होती बस सरलीकरण बारे में एफ # में है;)

+0

मुझे यह विचार पसंद है, यह वास्तव में एफ # – erikkallen

+0

के फायदे दिखा सकता है, क्या मैं पूछ सकता हूं कि आपने सीएनएफ रूपांतरण कैसे पूरा किया? हस्तलिखित या कुछ पुस्तकालय का उपयोग कर? कौन सी तकनीक? – citykid

+1

अच्छी तरह से यह काफी समय है (लगभग 5 साल - वाह समय तेजी से चलता है) ... अगर मुझे सही याद है तो मैंने इसे हाथ से किया है (बहुत कठिन नहीं होना चाहिए) - मूल रूप से यह यहां वर्णित है: http: //en.wikipedia। org/wiki/conjunctive_normal_form ... उम्मीद है कि यह – Carsten

4

Here is a great session from PDC - वह एक काफी गैर-तुच्छ उदाहरण उदाहरण करता है।

+0

लिंक के लिए धन्यवाद, यह एक वास्तव में महान और मनोरंजक प्रस्तुति है। प्रभावशाली! –

2

मजेदार कोड नमूने वाले बहुत से ब्लॉग हैं; http://fsharp.net पर शुरू करें और कुछ सामग्री खोदने के लिए विभिन्न समुदाय ब्लॉग और नमूने का पालन करें।

0

मैं जानता हूँ कि यह एक सीधा जवाब नहीं है, लेकिन मेरी सलाह: से कुछ पुस्तकालय बंदरगाह हास्केल। आपको पढ़ने और लिखने के लिए कुछ शानदार, गारंटीकृत कार्यात्मक कोड मिलेंगे। यह आपको एक अलग मानसिकता में मजबूर करेगा।

उदाहरण: FParsec और FsCheckHacakge पर कई उम्मीदवार।

वैकल्पिक रूप से Real World Haskell पुस्तक के माध्यम से काम करते हैं और F # में कुछ उदाहरण लिखने का प्रयास करते हैं।

अंत में, codeplex और एफ # के साथ टैग की गई चीज़ों के लिए दोस्तों को देखें।

+0

मुझे यकीन नहीं है कि कोई ऐसा व्यक्ति जो कभी प्रोग्राम नहीं करता कार्यात्मक शैली से पहले अच्छी शुरूआत होती है यदि वह ऐसी भाषा से पुस्तकालयों को बंद करने का प्रयास करता है, जिसे वह सीखने की कोशिश करने वाली भाषा में नहीं पढ़ सकता ... – BitTickler

+0

आप काफी निराशावादी हैं? यही वही है जो मैंने किया और मेरे अच्छे नतीजे थे। –

+0

आपके द्वारा सुझाए गए सुझावों का समानता यह कहना है कि अगर कोरियाई भाषा को अमेरिकी भाषा के रूप में सीखना है तो कोरियाई भाषा में कुछ चीनी कविताओं को ट्रांसक्रिप्ट करना था।;) आपके वर्कलोड को दोगुनी क्यों मदद मिलेगी? – BitTickler

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

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