अगर लिस्प इतना अच्छा है
Originalमई 2003
अगर लिस्प इतना अच्छा है, तो और लोग इसका इस्तेमाल क्यों नहीं करते? मुझे हाल ही में एक बातचीत में दर्शकों में मौजूद एक छात्र ने यह सवाल पूछा था। यह पहली बार नहीं था।
भाषाओं में, जैसा कि कई चीजों में होता है, लोकप्रियता और गुणवत्ता के बीच बहुत अधिक संबंध नहीं होता है। जॉन ग्रिशम (किंग ऑफ टॉर्ट्स बिक्री रैंक, 44) जेन ऑस्टेन (प्राइड एंड प्रेजुडिस बिक्री रैंक, 6191) से ज्यादा क्यों बिकता है? क्या ग्रिशम भी दावा करेंगे कि ऐसा इसलिए है क्योंकि वह एक बेहतर लेखक हैं?
प्राइड एंड प्रेजुडिस का पहला वाक्य यहाँ दिया गया है:
यह एक सार्वभौमिक रूप से स्वीकृत सत्य है कि एक अकेला आदमी जो एक अच्छे भाग्य के अधिकारी हैं, उसे एक पत्नी की आवश्यकता होनी चाहिए।
"यह एक सार्वभौमिक रूप से स्वीकृत सत्य है?" एक प्रेम कहानी के पहले वाक्य के लिए लंबे शब्द।
जेन ऑस्टेन की तरह, लिस्प कठिन दिखता है। इसका सिंटैक्स, या सिंटैक्स की कमी, इसे पूरी तरह से अलग दिखाता है जिन भाषाओं का अधिकांश लोग उपयोग करते हैं। लिस्प सीखने से पहले, मैं भी इससे डरता था। हाल ही में मुझे 1983 की एक नोटबुक मिली जिसमें मैंने लिखा था:
मुझे लगता है कि मुझे लिस्प सीखना चाहिए, लेकिन यह इतना विदेशी लगता है।
सौभाग्य से, मैं उस समय 19 साल का था और नई चीजें सीखने के लिए बहुत प्रतिरोधी नहीं था। मैं इतना अज्ञानी था कि लगभग कुछ भी सीखने का मतलब नई चीजें सीखना था।
लिस्प से डरने वाले लोग इसका उपयोग न करने के लिए अन्य कारण बनाते हैं। मानक बहाना, जब C डिफ़ॉल्ट भाषा थी, वह यह था कि लिस्प बहुत धीमा था। अब जब लिस्प बोलियाँ तेज़ उपलब्ध भाषाओं में से हैं, तो वह बहाना खत्म हो गया है। अब मानक बहाना खुले तौर पर गोलाकार है: कि अन्य भाषाएँ अधिक लोकप्रिय हैं।
(इस तरह के तर्क से सावधान रहें। यह आपको विंडोज दिलाता है।)
लोकप्रियता हमेशा स्व-निरंतर होती है, लेकिन यह प्रोग्रामिंग भाषाओं में विशेष रूप से ऐसा है। अधिक लाइब्रेरी लोकप्रिय भाषाओं के लिए लिखी जाती हैं, जो उन्हें और भी अधिक बनाती हैं लोकप्रिय। प्रोग्राम को अक्सर मौजूदा प्रोग्राम के साथ काम करना पड़ता है, और यह आसान होता है अगर वे एक ही भाषा में लिखे गए हों, इसलिए भाषाएँ वायरस की तरह प्रोग्राम से प्रोग्राम में फैलती हैं। और प्रबंधक लोकप्रिय भाषाओं को पसंद करते हैं, क्योंकि वे उन्हें डेवलपर्स पर अधिक नियंत्रण देते हैं, जिन्हें आसानी से बदला जा सकता है।
वास्तव में, अगर प्रोग्रामिंग भाषाएँ सभी कमोबेश समतुल्य होतीं, तो सबसे अधिक लोकप्रिय के अलावा किसी का उपयोग करने का बहुत कम औचित्य होगा। लेकिन वे समतुल्य नहीं हैं, लंबे समय तक नहीं। और यही कारण है कि कम लोकप्रिय भाषाएँ, जैसे जेन ऑस्टेन के उपन्यास, बिल्कुल भी जीवित रहते हैं। जब हर कोई नवीनतम जॉन ग्रिशम उपन्यास पढ़ रहा होता है, तो हमेशा कुछ लोग होंगे जो इसके बजाय जेन ऑस्टेन पढ़ रहे होंगे।