मुझे लगता है कि OCaml के साथ समस्या यह है कि यह बहुत उपयोगी नहीं है "बॉक्स से बाहर"। लोगों द्वारा किसी भाषा का उपयोग करने का अंतिम कारण यह है कि इसके लिए आवश्यक पुस्तकालय हैं। "बॉक्स से बाहर" कुछ भी नहीं होने के बावजूद, किसी को भी इस बात का अहसास नहीं है कि उन्हें लाइब्रेरी लिखने की जरूरत है। परिणाम एक ऐसी भाषा है जिसमें कोई लाइब्रेरी नहीं है, जिससे "वास्तविक एप्लिकेशन" लिखना मुश्किल हो जाता है।
मुझे लगता है कि यह वही है जो OCaml से ग्रस्त है - कोई भी इसमें "वास्तविक परियोजनाओं" को शुरू करने के लिए परेशान नहीं करता है क्योंकि सभी एक प्रोग्रामिंग भाषा है। हां, मैं दो और दो जोड़ सकता हूं और परिणाम प्रिंट कर सकता हूं। परिणाम पुस्तकालयों का एक संग्रह है जो ज्यादातर अकादमिक परित्याग हैं (लेखक ने अपनी पीएचडी प्राप्त की और आगे बढ़ गए), जो प्रोग्रामर के अभ्यास के लिए बहुत उपयोगी नहीं है।
(मुझे पता है कि इसे बदलने का काम चल रहा है, "बैटरियां शामिल" जैसी परियोजनाओं के साथ। 5 साल में यहां वापस आओ, और शायद ओकेमेल अधिक लोकप्रिय होगा।)
इस नियम के कुछ अपवाद हैं। जावा ने बिना पुस्तकालयों के साथ शुरुआत की, लेकिन सूर्य ने लोगों को उन सभी को घर में लिखने के लिए भुगतान किया, और फिर उन्होंने इसे नरक से बाहर निकाल दिया। जावा प्रमाणन, जावा-विशिष्ट हार्डवेयर, जावा पुस्तकें, जावा कक्षाएं आदि, फिर भी अधिकांश विश्वविद्यालयों ने इसे विशेष रूप से सिखाने के लिए आश्वस्त किया, भले ही यह प्रोग्रामिंग सीखने के लिए उपयोग करने के लिए बहुत अच्छी भाषा न हो।
नतीजा लोकप्रियता मिली। पैसा बहुत सारी समस्याओं को हल कर सकता है।
कार्यात्मक भाषा के क्षेत्र में, हम देख सकते हैं कि हास्केल काफी लोकप्रिय हो रहा है। मुझे लगता है कि अधिकांश लोकप्रियता ऐसे लोगों के कारण है जो उपयोगी पुस्तकालय लिखते हैं, और कभी भी लैंग्वेज का विपणन बंद नहीं करते हैं। हर दिन आप प्रोग्रामिंग रेडिट पर कुछ हास्केल लेख देखते हैं। यह लोगों के दिमाग में तब तक अटका रहता है जब तक कि वे अंततः यह तय नहीं कर लेते हैं, "मैं हास्केल की कोशिश करने जा रहा हूं।" जब वे ऐसा करते हैं, तो वे वेब फ्रेमवर्क, ऑब्जेक्ट डेटाबेस, ओपनजीएल लाइब्रेरी और एक्सएमएल प्रोसेसिंग लाइब्रेरी जैसी उपयोगी चीजें देखते हैं। इसका मतलब है कि वे वास्तव में कुछ उपयोगी "राइट नाउ" कर सकते हैं। इसलिए उत्पादक होने और इसके बारे में बहुत कुछ सुनने की क्षमता के बीच, हास्केल ने बहुत लोकप्रियता हासिल की है।
सीएल में हास्केल के समान ही कई पुस्तकालय हैं और लगभग उतना ही तेज़ है, लेकिन कोई भी इसके बारे में बात नहीं करता है, इसलिए यह "मृत महसूस करता है"। वास्तव में # लिस्प #haskell की तुलना में बहुत शांत है, लेकिन लिस्प अभी भी बहुत पुस्तकालयों के साथ एक बहुत ही उत्पादक भाषा है। किसी अन्य भाषा में SLIME नहीं है। लेकिन विपणन बहुत महत्वपूर्ण है, और हास्केल इसे लिस्प या ओकेमेल से बेहतर करता है (और उसी उपयोगकर्ताबेस के लिए प्रतिस्पर्धा करता है)।
अंत में, कुछ लोग प्रोग्रामिंग को "कभी नहीं" प्राप्त करेंगे, इसलिए उनके मानसिक मॉडल (चर मानों के साथ बॉक्स हैं, कोड शीर्ष-से-नीचे निष्पादित करता है) यह सुनिश्चित करेगा कि वे आपकी भाषा का उपयोग नहीं करते हैं। इस प्रकार का प्रोग्रामर प्रोग्रामिंग आबादी का एक बड़ा प्रतिशत है, इसलिए यह लिस्प, हास्केल और ओकेमेल जैसी अमूर्त भाषाओं के संभावित यूजरबेस को और सीमित करता है।