Loading...

अजीब भाषाएँ

Original

अगस्त 2021

जब लोग कहते हैं कि उनके अनुभव में सभी प्रोग्रामिंग भाषाएं मूलतः समान हैं, तो वे भाषाओं के बारे में नहीं, बल्कि अपने द्वारा की गई प्रोग्रामिंग के प्रकार के बारे में बयान दे रहे होते हैं।

प्रोग्रामिंग का 99.5% हिस्सा लाइब्रेरी फ़ंक्शन के लिए कॉल को एक साथ जोड़ने से बना है। सभी लोकप्रिय भाषाएँ इसमें समान रूप से अच्छी हैं। इसलिए कोई भी व्यक्ति आसानी से अपना पूरा करियर लोकप्रिय प्रोग्रामिंग भाषाओं के बीच काम करते हुए बिता सकता है।

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

अजीब भाषाएँ संयोग से अजीब नहीं होतीं। कम से कम अच्छी भाषाएँ तो नहीं। अच्छी भाषाओं का अजीब होना आमतौर पर किसी तरह की प्रोग्रामिंग के अस्तित्व को दर्शाता है जो सिर्फ़ लाइब्रेरी कॉल को एक साथ जोड़ने जैसा नहीं है।

एक ठोस उदाहरण: लिस्प मैक्रोज़। लिस्प मैक्रोज़ कई लिस्प प्रोग्रामर को भी अजीब लगते हैं। वे न केवल लोकप्रिय भाषाओं के चौराहे पर हैं, बल्कि उनकी प्रकृति के कारण उन्हें लिस्प की बोली में बदले बिना किसी भाषा में ठीक से लागू करना कठिन होगा। और मैक्रोज़ निश्चित रूप से उन तकनीकों का सबूत हैं जो ग्लू प्रोग्रामिंग से परे हैं। उदाहरण के लिए, पहले उस प्रकार की समस्याओं के लिए एक भाषा लिखकर समस्याओं को हल करना, और फिर उसमें अपना विशिष्ट एप्लिकेशन लिखना। न ही आप मैक्रोज़ के साथ यही सब कर सकते हैं; यह प्रोग्राम-मैनिपुलेटिंग तकनीकों के क्षेत्र में सिर्फ़ एक क्षेत्र है जिसे अभी भी पूरी तरह से खोजा नहीं गया है।

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

इस ड्राफ्ट को पढ़ने के लिए ट्रेवर ब्लैकवेल, पैट्रिक कोलिसन, डैनियल गकल, अमजद मसाद और रॉबर्ट मॉरिस को धन्यवाद