हम दुनिया का पहला वाणिज्यिक उत्पाद एफ # (में लिखा भेज दिया दृश्य के लिए एफ # ) और दूसरा ( अंकीय के लिए एफ # ) के साथ ही एफ # (पर पहली व्यावसायिक साहित्य एफ # .NET जर्नल ) और लिखा था और वर्तमान संस्करण के बारे में ही पुस्तक प्रकाशित of F # ( तकनीकी कंप्यूटिंग के लिए विजुअल एफ # 2010 )।
हम C # (उदाहरण के लिए ) में लिखी गई समान लाइनों के साथ उत्पादों का शिपिंग कर रहे थे, लेकिन हमारे पास OCaml के व्यावसायिक उपयोग में एक मजबूत पृष्ठभूमि भी थी। हम F # के उत्साही शुरुआती दत्तक थे, जब यह 2006 में एक शोध प्रोटोटाइप था, क्योंकि हमने औद्योगिक-ताकत .NET प्लेटफॉर्म पर एक सभ्य आधुनिक OCaml जैसी भाषा होने की क्षमता को मान्यता दी और, परिणामस्वरूप, हमने इसे उत्पादित करने के लिए धक्का दिया। परिणाम एक अविश्वसनीय सफलता रही है और एफ # हमारी बुलंद अपेक्षाओं को पार कर गया है।
हमारे लिए, एफ # के कई अलग-अलग फायदे हैं और हम इसका उपयोग विभिन्न प्रकार के अनुप्रयोगों के लिए करते हैं। हमारे पास उत्पादन में एफ # कोड की हजारों हजारों लाइनें हैं। अब हम अपने सभी LOB ऐप्स के लिए F # का उपयोग करते हैं: हमारे क्रेडिट कार्ड लेनदेन को F # कोड का उपयोग करके संसाधित किया जाता है, हमारे उत्पाद सूचनाओं को F # कोड का उपयोग करके भेजा जाता है, F # कोड का उपयोग करके हमारी सदस्यता को संभाला जाता है, हमारे खातों को F # कोड का उपयोग करके किया जाता है। शायद मुख्य भाषा विशेषता जो यहां लाभांश का भुगतान करती है, पैटर्न मिलान है। यहां तक कि हमने F # का उपयोग करके रंग वाक्य रचना को हमारी नवीनतम पुस्तक पर प्रकाश डाला ...
हमारा विज़ुअलाइज़ेशन लाइब्रेरी एक बड़ा विक्रेता है और विज़ुअल स्टूडियो में एफ # इंटरएक्टिव पर इसकी कार्यक्षमता केंद्र है। हमारी लाइब्रेरी कम से कम प्रयास (उदाहरण के लिए) के साथ इंटरैक्टिव 2 डी और 3 डी विज़ुअलाइज़ेशन को फैलाने की क्षमता के साथ इसे बढ़ाती हैPlot([Function sin], (-6., 6.))
एक साइन लहर की साजिश)। विशेष रूप से, सभी थ्रेडिंग मुद्दे पूरी तरह से स्वचालित हैं ताकि उपयोगकर्ताओं को यूआई थ्रेड्स और डिस्पैच के बारे में चिंता करने की आवश्यकता न हो। पुस्तकालय के इस हिस्से को लिखते समय प्रथम श्रेणी के कार्य और आलस्य अत्यंत मूल्यवान थे और बीजगणितीय डेटाैटिप्स का व्यापक रूप से उपयोग किया गया था। जब हमारे ग्राहकों ने WPF के हिट परीक्षण में प्रदर्शन बग मारा और आसानी से 10,000 × प्रदर्शन सुधार के लिए एफ # में प्रासंगिक कोड को फिर से लागू करने में सक्षम थे, तो यहां प्रदर्शन भी मूल्यवान साबित हुआ। इस उत्पाद के GUI के मुक्त-स्वरूप के कारण, GUI डिज़ाइनर और C # लाभकारी नहीं होगा।
हमारा अधिकांश कार्य संख्यात्मक तरीकों के आसपास घूमता है, जिसमें हमारे वाणिज्यिक पुस्तकालय और पुस्तकें दोनों शामिल हैं। F # इस क्षेत्र में C # की तुलना में अधिक मजबूत है क्योंकि यह न्यूनतम प्रदर्शन दंड के साथ उच्च-स्तरीय अमूर्तता (जैसे उच्च-क्रम के कार्य) प्रदान करता है। इस संदर्भ में हमारा सबसे सम्मोहक परिणाम रैखिक बीजगणित से क्यूआर अपघटन का एक सरल लेकिन सामान्यीकृत कार्यान्वयन का निर्माण था, जो कि लैपैक के संदर्भ कार्यान्वयन से फोरट्रान कोड से 20 × कम था, जो विक्रेता-ट्यून किए गए इंटेल मठ से 3 × तेज था कर्नेल लाइब्रेरी और अधिक सामान्य क्योंकि हमारा कोड किसी भी प्रकार के मैट्रिक्स को संभाल सकता है, यहां तक कि प्रतीकात्मक मैट्रिक्स भी!
वर्तमान में हम F # (हिम्मत के लिए) और शम (शिम के लिए) के मिश्रण में WPF / सिल्वरलाइट घटक विकसित कर रहे हैं, WPF ऐप्स का निर्माण हमारे सॉफ्टवेयर उत्पादों के लिए इंटरैक्टिव मैनुअल के रूप में कार्य करने के लिए कर रहे हैं और मैं एक नई पुस्तक मल्टीकल्चर एफ # लिख रहा हूं, .NET पर साझा-मेमोरी समानांतर प्रोग्रामिंग के लिए निश्चित मार्गदर्शिका होगी।