लिस्प कर्स

६ अक्टूबर, २०१७ को अपडेट करें। एन.बी .: कृपया हेकर न्यूज़ को सबमिट करना बंद करें! इस निबंध के लिए हैकर समाचार खोज परिणामों को देखें पहली प्रविष्टि के लिए नोट देखें: चलो, हर कोई! चलो एक और समय मृत घोड़ों को हराया! यदि आप हैकर समाचार ई-क्रेडिट प्राप्त करना चाहते हैं, तो इसके बजाए इटेनियल मेनफ्रेम सबमिट करने का प्रयास करें।

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

इस निबंध में, मैं तर्क करता हूं कि लिस्प की अभिव्यक्ति शक्ति वास्तव में गति की कमी के कारण है।

लिस्प की शक्ति अपने सबसे खराब दुश्मन है।

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

अब यह सोचा प्रयोग दिलचस्प बनाओ: सी और स्कीम प्रोग्रामिंग भाषाओं में वस्तु अभिविन्यास जोड़ने की कल्पना करें। स्कीम ऑब्जेक्ट-ओरिएंटेड स्कीम बनाना एक एसोफोमोर होमवर्क असाइनमेंट है। दूसरी ओर, सी के लिए ऑब्जेक्ट ओरिएंटेशन को जोड़ने से बर्जने स्ट्राउटस्ट्रुप की प्रोग्रामिंग चॉप्स की आवश्यकता होती है।

आवश्यक प्रतिभा और प्रयास में इस विचलन का परिणाम द लिस्प कर्स का कारण बनता है:

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

___________________________________________

योजना के मामले पर फिर से विचार करें। योजना वस्तु उन्मुख बनाने से बहुत आसान है, कई योजना हैकर्स ने ऐसा किया है। इस बात के अतिरिक्त, कई व्यक्तिगत योजना हैकर्स ने ऐसा किया है १९९० के दशक में, इसने भाषा के लिए ऑब्जेक्ट-ओरिएंटेड पैकेजों की एक वास्तविक गोदाम सूची सूची का नेतृत्व किया। अकेले विरोधाभास, केवल, गारंटी है कि उनमें से कोई भी मानक बन जाएगा। अब कुछ योजना कार्यान्वयनों की अपनी ऑब्जेक्ट ओरिएंटेशन सुविधा है, यह इतना बुरा नहीं है। फिर भी, तथ्य यह है कि इन पैकेजों में से कई अकेले व्यक्तियों का काम थे, जिनसे ओलाइन शेवर ने स्कीम शैल, स्कॉश के दस्तावेजीकरण के बारे में लिखा था।

व्यक्तिगत हैकर्स द्वारा लिखे गए प्रोग्राम स्क्रैच-ए-खुच मॉडल का पालन करते हैं। ये कार्यक्रम इस समस्या को हल करेंगे जो कि हैकर, खुद को समस्या के संबंधित हिस्सों को अनिवार्य रूप से संभालने के बिना चल रहा है जो कार्यक्रम को दूसरों के लिए अधिक उपयोगी बना देगा। इसके अलावा, यह प्रोग्राम उस अकेले हैकर की अपनी स्थापना पर काम करना सुनिश्चित करता है, लेकिन अन्य योजना लागू करने के लिए पोर्टेबल नहीं हो सकता है या अन्य प्लेटफार्मों पर एक ही योजना कार्यान्वयन के लिए नहीं हो सकता है। दस्तावेज़ीकरण की कमी हो सकती है हैकर के प्रचुर खाली समय में अनिवार्य रूप से एक परियोजना होने के नाते, कार्यक्रम को वास्तविक जीवन की जिम्मेदारियों को हैकर पर घुसपैठ करने के लिए जिम्मेदार होना चाहिए। ओलिन शेवर के रूप में उल्लेख किया गया है, इसका मतलब यह है कि ये एक-पुरुष-बैंड परियोजनाएं समस्या का अस्सी प्रतिशत हल कर देती हैं।

डॉ। मार्क तारवेर के निबंध, द बिप्लोर लिस्प प्रोग्रामर, का इस घटना का एक उपयुक्त वर्णन है। वह इन अकेले-भेड़िया लिस्प हैकर्स और उनके बारे में लिखते हैं

… चीजों को ठीक से समाप्त करने में असमर्थता। वाक्यांश ‘फेंक-डिज़ाइन डिजाइन’ बिल्कुल बीबीएम के लिए बनाया गया है और यह लिस्प समुदाय से आता है। लिस्प आपको चीजों को इतनी आसानी से चक कर देता है, और इसे ले जाने में आसान है मैंने यह १० साल पहले देखा था जब मेरी लिस्प में जीयूआई की तलाश में था। कोई समस्या नहीं, वहाँ ९ विभिन्न प्रसाद थे समस्या यह थी कि ९ में से कोई भी ठीक से प्रलेखित नहीं किया गया था और कोई भी बग मुक्त नहीं था मूल रूप से प्रत्येक व्यक्ति ने अपना स्वयं का समाधान कार्यान्वित किया था और यह उसके लिए काम किया था ताकि ठीक हो। यह बीबीएम रवैया है; यह मेरे लिए काम करता है और मैं इसे समझता हूं। यह कुछ भी करने के लिए किसी और की मदद की ज़रूरत नहीं है या किसी की मदद के लिए भी है।

_____________________________________

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

द्विध्रुवी लिस्पर पर डा। मार्क तारवेर का निबंध इस बिंदु को बनाता है:

अब इसके विपरीत, सी / सी + + दृष्टिकोण काफी अलग है। यह चिमटी और गोंद के साथ कुछ भी करने के लिए इतना मुश्किल है कि आप जो भी महत्वपूर्ण हैं वह एक वास्तविक उपलब्धि होगी। आप इसे दस्तावेज़ करना चाहते हैं इसके अलावा आप महत्वपूर्ण आकार के किसी भी सी परियोजना में सहायता की आवश्यकता के लिए उत्तरदायी हैं; इसलिए आप सामाजिक होने और अन्य लोगों के साथ काम करने के लिए उत्तरदायी हैं। आपको बस कहीं और पाने की आवश्यकता है।

और यह सब, एक नियोक्ता के दृष्टिकोण से, आकर्षक है दस लोग जो संवाद करते हैं, बातें ठीक से लिखते हैं और एक साथ काम करते हैं, एक बीबीएम हैकिंग लिस्प के लिए बेहतर है, जिसे किसी अन्य बी.बी.एम. (यदि आपको कोई मिल सकता है) से बदला जा सकता है, तो संभवतः वह बिना कुछ समय तक नीचे जाना होगा रिबूट सक्षम।

इसलिए, जो पहले से ही सी जानते हैं, “क्या ऑब्जेक्ट सिस्टम मुझे नहीं सीखना चाहिए?” इसके बजाय, वे सी ++ या ऑब्जेक्टिव-सी का उपयोग करते हैं, इसके आधार पर कि उनके सहयोगी क्या उपयोग कर रहे हैं, फिर “मैं वस्तु-उन्मुख सुविधा का उपयोग कैसे करूं? एक्स? “उत्तर:” यह गुगल और तु मिलेगा। ”

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

कुछ हद तक लिस्प-प्रेमियों ने शैक्षणिक भाषाओं की वर्तमान फसल का सर्वेक्षण किया है (हास्केल, ओककल, एट वगैरह) और पाया कि वे चाहते हैं कि उनकी कोई सुविधा पहले से लिस्प में मौजूद है या आसानी से लागू की जा सकती है – और लिस्प के साथ में सुधार मैक्रो। वे शायद सही हैं।

द लिस्पप्लर हैकर

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

उस अनुच्छेद को फिर से पढ़ें, और एक्सट्रपलेशन करें

_________________________

पाठक के लिए व्यायाम: कल्पना कीजिए कि एक मजबूत प्रतिद्वंद्विता हास्केल और कॉमन लिस्प के बीच विकसित होती है। आगे क्या होगा?

उत्तर: लिस्प कर्स अंदर लातें। हर दूसरे या तीसरे गंभीर लिस्प हैकर आलसी मूल्यांकन, कार्यात्मक शुद्धता, तीर, पैटर्न मेलिंग, टाइप इनफ्रेंसिंग, और बाकी के अपने स्वयं के कार्यान्वयन में रोल करेंगे। इन परियोजनाओं में से अधिकांश अकेला-भेड़िया संचालन होगा इस प्रकार, उनके पास अस्सी प्रतिशत सुविधाओं की आवश्यकता होगी जो कि अधिकांश लोगों को चाहिए (प्रत्येक मामले में एक अलग एसी प्रतिशत)। वे खराब दस्तावेज होंगे। वे लिस्प सिस्टम में पोर्टेबल नहीं होंगे। कुछ लोगों को छोड़ने से पहले महान वादा दिखाएगा, जबकि प्रोजेक्ट के रख-रखाव को अपने बिलों का भुगतान करने के लिए बंद हो जाएगा। कई लोग हास्केल को इस या उस आयाम को हराने होंगे (फिर से, प्रत्येक मामले में एक अलग), लेकिन comp.lang.lisp यूज़नेट समूह पर लौ युद्धों से उनकी स्वीकृति को बाधित किया जाएगा।

एंडगेम: मैक्रो का एक यादृच्छिक पुराने-टाइम लिस्प हैकर संग्रह, हास्केल का ८० % अपग्रेड करने वाला, अनजान, बग-रोचक कार्यान्वयन तक जोड़ देगा क्योंकि लिस्पा हास्केल की तुलना में अधिक शक्तिशाली है।

________________________________

इस कहानी की नैतिकता यह है कि माध्यमिक और तृतीयक प्रभाव तकनीकी न केवल तकनीकी मुद्दों के संबंध में हम क्या कर सकते हैं, यह हमारे सामाजिक व्यवहार को भी प्रभावित करता है। यह सामाजिक व्यवहार वापस पाश कर सकता है और विचाराधीन मूल तकनीकी मुद्दों को प्रभावित कर सकता है।

लिस्प इस सबक का एक दर्दनाक भावपूर्ण उदाहरण है। लिस्प बहुत ताकतवर है, कि यह स्वतंत्रता को खूनी-मनोवृत्ति के बिंदु तक प्रोत्साहित करती है। इस स्वतंत्रता ने लिस्प मशीन दिनों के रूप में आश्चर्यजनक रूप से अच्छा नवाचार बनाया है। यह वही आजादी भी “लिस्प सब द डाउन डाउन” सिस्टम को पुराने बनाने की कोशिशों को रोकती है; नहीं “लिस्प ओएस” प्रोजेक्ट ने सिग्नलिक्स और एलएमआई के निधन के बाद से महत्वपूर्ण जन इकट्ठा किया है।

इन माध्यमिक और तृतीयक प्रभावों का एक परिणाम यह है कि, लिस्प कभी भी सबसे अभिव्यंजक भाषा है, भले ही इसे अधिक अभिव्यंजक भाषा बनाने में सैद्धांतिक रूप से असंभव है, लिस्परों में अब भी अन्य प्रोग्रामिंग भाषाओं से सीखने के लिए कुछ चीज़ें होंगी। स्मालटाक लोग सबको सिखाया – लिस्प हैकर्स सहित – ऑब्जेक्ट ओरिएंटेड प्रोग्रामन के बारे में एक चीज़ या दो साफ प्रोग्रामिंग भाषा और मोजार्ट / ऑज़ कॉम्बो में अपने स्वयं के कुछ आश्चर्य हो सकते हैं।

____________________________

लिस्प कर्स स्टैनिस्लाव डैटस्कॉव्स्की की तमाम चीजों का खंडन नहीं करता है: नियोक्ता ज्यादा पसंद करते हैं कि श्रमिकों को अधिकतर उत्पादक होने की अपेक्षा फूंगनीय हो। बिल्कुल सही। महान कठिनाई के साथ किसी को भी प्रबंधकीय वर्ग के मसलन को कम करना पड़ता है। हालांकि, उनके निबंध की अंतिम पंक्ति समस्याग्रस्त हैं। अर्थात:

“नि: शुल्क सॉफ्टवेयर” दुनिया के लिए, यह बयानबाजी में औपचारिक रूप से औद्योगिक हठधर्मियों का विरोध करता है, लेकिन व्यवहार में बिल्कुल नहीं। घन खेत से घिरा कोई अवधारणा कभी भी शौकिया जनता के बीच वास्तविक कर्षण प्राप्त नहीं हुई है।

एक फुटनोट में, वह विभिन्न विचारों को आगे बढ़ाने के लिए इस अनिच्छा का एक उदाहरण के रूप में लिनक्स प्रदान करता है। यह सुनिश्चित करने के लिए, उसके पास एक बिंदु है जब यह ऑपरेटिंग सिस्टम की बात आती है (सबसे बड़ी टिप्पणी, विशेष रूप से, अनियमित रूप से नीच)। प्रोग्रामिंग भाषाओं की बात करते समय उनके पास कोई बिंदु नहीं है पायथन और रूबी लिस्प द्वारा प्रभावित थे उनके कई प्रशंसकों ने लिस्प के लिए सम्मान व्यक्त किया और उनके कुछ रुचि ने लिस्प पुनर्जागरण को बढ़ाया। कुछ न्याय के साथ, उन घन खेतों के हेल्ल के उद्भव होने के बावजूद जावास्क्रिप्ट को “सी के कपड़ों में योजना” के रूप में वर्णित किया गया है।

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

____________________________

लिस्प के लिए उपलब्ध मुक्त विकास वातावरण आगे लिस्प अभिशाप का उदाहरण देते हैं।

यह बात करने के लिए शर्मनाक है, लेकिन यह किया जाना चाहिए। लिस्प मशीन के बारे में भूल जाओ; हमारे पास डेवलपमेंट सिस्टम भी नहीं है जो मैच के लिए औसत स्मालटाक हैकर प्रदान करता है (“मैंने हमेशा महसूस किया है कि लिस्प बेहतर भाषा है और स्मॉलटाक बेहतर पर्यावरण है।” – रमोन लियोन)। जब तक वे हजारों डॉलर का भुगतान न करें, लिस्प हैकर्स अभी भी इमाक्स।

यूनिक्स में चलने वाले पहले एएमसीएस के लेखक जेम्स गोसलिंग ने सही तरीके से बताया है कि एमएसीएस ने २० साल से अधिक समय में मौलिक परिवर्तन नहीं किया है। इसका कारण यह है कि एमएसीटी एआई लैब में एएमएसीएस एक स्नातक-छात्र परियोजना था, जब एमएसीएस एग्री लैब में एमएसीएस के विकास को अभी भी परोक्ष रूप से वित्त पोषण किया जा रहा था, जब एमएसीएस के रखरखाव अभी भी एक डिजाइन के ऊपर कोड तैयार कर रहे थे, जो कि वापस आ गया था। एक स्लैशडॉटर ईसाइज़ कर सकता है कि एएमएसीएस पहले से ही काफी सक्षम है और ऐसा कुछ भी कर सकता है जो किसी भी अन्य विकास वातावरण में कर सकता है, केवल बेहतर है जो लोग लिस्प मशीन का इस्तेमाल करते हैं वे कहते हैं कि अन्यथा।

तो क्यों नहीं लिस्प हैकर्स ने छोटी बात लोगों को अपने उचित स्थान पर रखा? वे एक स्वतंत्र विकास प्रणाली क्यों नहीं बनाते हैं, जो कुछ लिस्पपा की खोई हुई महिमाओं को ध्यान में रखता है, भले ही वे किसी अन्य लिस्पपी को पुन: उत्पन्न न कर सकें?

इसका कारण यह नहीं है कि लिस्प कर्स के कारण बड़ी संख्या में लिस्प हैकर्स को एक दूसरे के साथ सहयोग करना होगा। अधिक बारीकी से देखें: लिस्प हैकर्स बनने वाले लोगों की संख्या में बड़ी संख्या में एक दूसरे के साथ सहयोग करना होगा। और उन्हें एक ऐसे डिजाइन पर एक दूसरे के साथ सहयोग करना पड़ेगा, जो पहले से ही नहीं दिया गया था। और कोई बाहरी अनुशासन नहीं होगा, जैसे कि उद्यम पूंजीवादी या अन्य कॉर्पोरेट मास्टर, उन्हें ट्रैक पर रखने के लिए।

प्रत्येक प्रोजेक्ट में सदस्यों, असहमति, शैली और दर्शन पर संघर्ष के बीच घर्षण है। ये सामाजिक समस्याएं इस तथ्य से प्रति-कार्रवाई की जाती हैं कि कोई बड़ी परियोजना अन्यथा पूरा नहीं की जा सकती है। “हम सभी को एक साथ लटका देना चाहिए, या हम सभी को अलग से लटकाएंगे।” लेकिन लिस्प की अभिव्यक्तता इस प्रतिवर्ती शक्ति को बहुत कमजोर बना देती है; कोई भी हमेशा अपनी परियोजना शुरू कर सकता है इस प्रकार, व्यक्तिगत हैकर तय करते हैं कि मुसीबत इसके लायक नहीं है। इसलिए वे या तो परियोजना से बाहर निकलते हैं, या शुरू करने के लिए इस परियोजना में शामिल नहीं होते हैं। यह लिस्प कर्स है।

कोई भी उस चीज़ को पाने के लिए इमैक को भी हुक कर सकता है जो काफी अच्छा है। इस प्रकार, लिस्प कर्स खराब सहयोगी है।

___________________________

लिस्प की अभिव्यक्ति शक्ति कमियां है। मुफ्त दोपहर के भोजन जैसी कोई चीज नहीं है।

 

Source: http://www.winestockwebdesign.com/Essays/Lisp_Curse.html