अधिकांश लिनक्स वितरण के साथ पर्ल को डिफ़ॉल्ट रूप से क्यों स्थापित किया गया है?


जवाबों:


27

आपकी बात के आधार पर, उत्तर सेक्सी नहीं है।

पर्ल बहुत उपयोगी है। सिस्टम उपयोगिताओं के बहुत सारे लिखे गए हैं या पर्ल पर निर्भर हैं। यदि पर्ल अनइंस्टॉल हो जाता है तो अधिकांश सिस्टम ठीक से काम नहीं करेंगे।

कुछ साल पहले फ्रीबीएसडी ने आधार प्रणाली के लिए एक निर्भरता के रूप में पर्ल को हटाने के लिए बहुत प्रयास किए । यह एक आसान काम नहीं था।


क्या कर्ल में ही पर्ल का उपयोग किया जाता है? मैं इस लेख को देख रहा हूं जो दावा करता है कि कर्नेल पेर कोड के लगभग 2,200 लाइनों का उपयोग करता है जो GNU लिनक्स के आकार का अनुमान लगा रहा है । इसके अलावा, क्या सवाल पूछा; आर्क लिनक्स स्थापित करते समय, मैंने देखा कि पर्ल को बेस पैकेज में स्थापित किया गया है, क्या कोर उपयोगिताओं हैं जो पर्ल का उपयोग करते हैं?

9
@JoshVoigts कर्नेल स्वयं पर्ल नंबर का उपयोग नहीं करता है। हालाँकि कर्नेल के निर्माण की प्रक्रिया उचित मात्रा में पर्ल का उपयोग करती है। आर्क के लिए, किसी और को उस एक का जवाब देना होगा।
पैट्रिक

3
जिज्ञासा से बाहर, FreeBSD ने पर्ल को किसके साथ बदल दिया?
शादुर


7
फ्रीबीएसडी आधार प्रणाली मूल रूप से कर्नेल, उपयोगिताओं और सब कुछ के साथ एक विशाल स्रोत-कोड रेपो है। इसलिए वे उस रेपो में पर्ल के अपने कांटे को बनाए हुए थे, जो कि अपस्ट्रीम पर्ल के साथ अप-टू-डेट रखने के लिए एक बड़ा प्रयास और कठिन प्रयास था। तो यह उनके लिए बेस सिस्टम से पर्ल को खत्म करने और सिर्फ एक पोर्ट के रूप में स्थापित करने के लिए समझ में आया, जो अप-टू-डेट रखने के लिए बहुत आसान है (क्योंकि वे सिर्फ अपस्ट्रीम पर्ल रिलीज कर रहे हैं और उन्हें संकलित कर रहे हैं)।
cjm

24

18 दिसंबर, 1987 को comp.source.misc न्यूज़ग्रुप में लैरी वॉल की मूल पर्ल v1.0 पोस्टिंग में उन्होंने कहा:

यदि आपको कोई समस्या है जो आमतौर पर sed या awk या sh का उपयोग करती है, लेकिन यह उनकी क्षमताओं से अधिक है या उन्हें थोड़ा तेज चलना चाहिए, और आप C में मूर्खतापूर्ण बात नहीं लिखना चाहते हैं, तो पर्ल आपके लिए हो सकता है।

एक में बहुत बाद में प्रदर्शनी , वह एक छोटे से अधिक सविस्तार बताया:

लेकिन यूनिक्स शेल प्रोग्रामिंग की कुंठाओं ने सीधे पर्ल के निर्माण का नेतृत्व किया, जिसे मेरे पास बताने के लिए वास्तव में समय नहीं है। लेकिन अनिवार्य रूप से, मैंने पाया कि शेल स्क्रिप्टिंग आंतरिक रूप से इस तथ्य से सीमित थी कि इसकी अधिकांश क्रियाएं इसके नियंत्रण में नहीं हैं और इसलिए मुख्य रूप से एक दूसरे के साथ असंगत हैं। और संज्ञाएँ दुर्बल हैं, तार और फाइलों तक सीमित हैं, कौन जानता है-किस टाइपोलॉजी के साथ ...

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

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


4
  1. पर्ल को यूनिक्स के लिए विकसित किया गया था क्योंकि उपकरण पर्याप्त शक्तिशाली नहीं थे। खेल के लिए, आप देख सकते हैं awkऔरsed इसे (पर्ल) देख सकते हैं।
  2. पर्ल यूनिक्स शेल (और सी, जो यूनिक्स के लिए बहुत महत्वपूर्ण है - या अन्य तरीके से, शायद) से प्रेरित था।
  3. इसके अलावा, पर्ल को एक GNU लाइसेंस के तहत वितरित किया जा सकता है । कुछ लोग एक तकनीकी दृष्टिकोण से उस अप्रासंगिक पर विचार करेंगे, लेकिन यह परस्पर संबंध को दर्शाता है।
  4. आखिरी चीज जो मैं सोच सकता हूं वह है LAMP, जो एक नेटवर्किंग "सॉफ्टवेयर बंडल" है। (इसे विकिपीडिया पर देखें: पी है, या कम से कम था, पर्ल; एल लिनक्स है।) (लेकिन यह अंतिम बिंदु थोड़ा "चिकन या अंडा" है।)

5
इन दिनों LAMP में P बहुत अधिक बार PHP या पायथन होता है। मुझे लगता है कि पर्ल मोर्सो की एक विरासत का उपयोग है।
darvids0n

नोटपैड ++ जीएनयू लाइसेंस (विशेषकर, जीएनयू जीपीएल) के तहत जारी किया जाता है। AFAIK नोटपैड ++ और विभिन्न लिनक्स वितरणों के बीच थोड़ा "इंटरलालिंग" है। बस अपनी बात # 3 में एक प्रतिवाद का उल्लेख करने के लिए।
बजे एक CVn

@ माइकलकॉर्जलिंग: क्या आप इस बात से सहमत नहीं होंगे कि कुछ लाइसेंस लिनक्स दुनिया में आपके आवेदन के प्रसार (या, इस मामले में, एक प्रोग्रामिंग भाषा) में बाधा डालेंगे, जबकि अन्य ऐसी बाधाओं को नहीं डालेंगे? इसका मतलब यह नहीं है कि आप वितरण में अपना रास्ता लाइसेंस कर सकते हैं, अगर आपने वास्तव में सोचा था कि मैंने क्या कहा था। (मुझे नहीं लगता।)
इमानुएल बर्ग

@darvidsOn: हाँ ... यही मैंने कहा (?)। (मुझे लगता है कि यह एक संयोग है कि उन बड़ी स्क्रिप्टिंग भाषाएं सभी एक पी के साथ शुरू होती हैं)
इमानुएल बर्ग

@EmanuelBerg आपने पर्ल और लिनक्स के बीच "इंटरलिग्लिंग" का उल्लेख इस तथ्य के आधार पर किया है कि पर्ल के पास जीएनयू लाइसेंस है। FreeBSD बंदरगाहों और कई लिनक्स वितरणों में बहुत सारे सॉफ़्टवेयर हैं जिनके पास अन्य लाइसेंस हैं, और बहुत सारे सॉफ़्टवेयर हैं जो या तो नहीं चलते हैं जो कि विभिन्न GNU लाइसेंस (GPL, LGPL, FDL, ...) के तहत लाइसेंस प्राप्त है।
बजे एक सीवी

1

मुझे लगता है कि इस प्रश्न का उत्तर भाग ऐतिहासिक में है, भाग व्यावहारिक में।

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

क्या व्यावहारिक है का सवाल है, पर्ल है OS और वेब के लिए एक जैसे (फिर से, दीप, भूल नहीं या तो अजगर या PHP): अभी भी बहुत कुछ की गोंद। तो क्यों नहीं कुछ भी शामिल है जो बहुत सारे उद्देश्यों के लिए उपयोगी है? और इससे भी अधिक, क्यों जो कुछ भी है उसे हटा दें (और इससे कोई नुकसान नहीं होता है), और उपयोगी है?

लेकिन, जैसा कि होता है, लिनक्स चैनल (# 151, जून 2013) के सबसे हालिया अंक में इस पर एक नोट है। जाहिर है, लिनक्स कर्नेल को संकलित करने के लिए एक जोड़ी लघु और सरल पर्ल स्क्रिप्ट कार्यरत हैं। (फिर से, ओएस में पर्ल की "गोंद" भूमिका।) अब, कर्नेल डेवलपर्स में से एक उन लिपियों के फिर से लिखने के पैच प्रस्तुत कर रहा है, इस बार पर्ल में नहीं, बल्कि "यूनिक्स शेल स्क्रिप्ट" के रूप में (यह है)sh ?)। इस तरह, कर्नेल को संकलित करने वाले किसी भी व्यक्ति के लिए पर्ल स्थापित नहीं होगा। लेकिन, उस पैच (कई बार प्रस्तुत) को नहीं उठाया गया है। और इसका एक कारण यह है कि ठंड में एक बार बाहर निकलने के बाद, पर्ल को अंदर जाने की संभावना नहीं है। लोग पर्ल को पसंद करते हैं, और वे इसके साथ भाग नहीं लेना चाहते हैं।

अब, यह केवल इस सवाल के किनारे को छूता है क्योंकि शायद लिनक्स उपयोगकर्ताओं का एक बहुत छोटा अल्पसंख्यक गिरी को संकलित करने की संभावना है। लेकिन यह अभी तक पहेली का एक और टुकड़ा है (और मुझे संदेह है कि कई हैं)।


1
आप के लिए कोई टिप्पणी नहीं, इमानुएल, लेकिन पर्ल के साथ भाग नहीं लेने के इच्छुक लोगों के लिए, अगर आपको ज़रूरत है तो इसे स्थापित करना कितना मुश्किल हो सकता है?
मैटबियनको
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.