पर्ल: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 37: Line 37:
| file_ext = .plx, .pl, .pm, .xs, .t, .pod, .cgi
| file_ext = .plx, .pl, .pm, .xs, .t, .pod, .cgi
}}
}}
पर्ल दो उच्च-स्तरीय, सामान्य-उद्देश्य प्रोग्रामिंग भाषा, [[दुभाषिया (कंप्यूटिंग)]], [[गतिशील प्रोग्रामिंग भाषा|गतिशील प्रोग्रामिंग भाषाओं]] का परिवार है। पर्ल 5 को संदर्भित करता है, लेकिन 2000 से 2019 तक इसने अपनी पुन: डिज़ाइन की गई सह भाषा, पर्ल 6 को भी संदर्भित किया, इससे पहले कि अक्टूबर 2019 में बाद के नाम को सामान्यतः [[राकू (प्रोग्रामिंग भाषा)]] में बदल दिया गया।<ref>{{cite web |url = https://www.perl.org/about.html |title = पर्ल के बारे में|publisher = perl.org |quote = "पर्ल" भाषाओं का एक परिवार है, "पर्ल 6" परिवार का हिस्सा है, लेकिन यह एक अलग भाषा है जिसकी अपनी विकास टीम है। इसके अस्तित्व का "पर्ल 5" के निरंतर विकास पर कोई महत्वपूर्ण प्रभाव नहीं है।|access-date = 2013-04-20 |archive-date = November 6, 2015 |archive-url = https://web.archive.org/web/20151106051931/https://www.perl.org/about.html |url-status = live }}</ref><ref>{{cite web |url = https://github.com/Raku/problem-solving/blob/master/solutions/language/Path-to-Raku.md |title = राकू का रास्ता|publisher = GitHub |quote = यह दस्तावेज़ पर्ल 6 का नाम बदलकर राकू करने के लिए उठाए जाने वाले कदमों का वर्णन करता है|access-date = 2021-01-14 |archive-date = November 12, 2020 |archive-url = https://web.archive.org/web/20201112035821/https://github.com/Raku/problem-solving/blob/master/solutions/language/Path-to-Raku.md |url-status = live }}</ref>
पर्ल दो उच्च-स्तरीय, सामान्य-उद्देश्य, व्याख्या की गई, [[गतिशील प्रोग्रामिंग भाषा|गतिशील प्रोग्रामिंग भाषाओं]] का परिवार है। पर्ल 5 को संदर्भित करता है, लेकिन 2000 से 2019 तक इसने स्वयं पुन: डिज़ाइन की गई सह-भाषा, पर्ल 6 को भी संदर्भित किया, इससे पहले कि अक्टूबर 2019 में बाद के नाम को सामान्यतः [[राकू (प्रोग्रामिंग भाषा)]] में परिवर्तन कर दिया गया।<ref>{{cite web |url = https://www.perl.org/about.html |title = पर्ल के बारे में|publisher = perl.org |quote = "पर्ल" भाषाओं का एक परिवार है, "पर्ल 6" परिवार का हिस्सा है, लेकिन यह एक अलग भाषा है जिसकी अपनी विकास टीम है। इसके अस्तित्व का "पर्ल 5" के निरंतर विकास पर कोई महत्वपूर्ण प्रभाव नहीं है।|access-date = 2013-04-20 |archive-date = November 6, 2015 |archive-url = https://web.archive.org/web/20151106051931/https://www.perl.org/about.html |url-status = live }}</ref><ref>{{cite web |url = https://github.com/Raku/problem-solving/blob/master/solutions/language/Path-to-Raku.md |title = राकू का रास्ता|publisher = GitHub |quote = यह दस्तावेज़ पर्ल 6 का नाम बदलकर राकू करने के लिए उठाए जाने वाले कदमों का वर्णन करता है|access-date = 2021-01-14 |archive-date = November 12, 2020 |archive-url = https://web.archive.org/web/20201112035821/https://github.com/Raku/problem-solving/blob/master/solutions/language/Path-to-Raku.md |url-status = live }}</ref>
चूंकि पर्ल सामान्यतः संक्षिप्त रूप नहीं है,<ref>{{cite web |url = http://learn.perl.org/faq/perlfaq1.html#Whats-the-difference-between-perl-and-Perl |title = पर्ल के बारे में सामान्य प्रश्न|last = Lapworth |first = Leo |publisher = Perl.org |work = Perl FAQ |access-date = February 24, 2012 |archive-date = May 28, 2013 |archive-url = https://web.archive.org/web/20130528001715/http://learn.perl.org/faq/perlfaq1.html#Whats-the-difference-between-perl-and-Perl |url-status = live }}</ref> प्रैक्टिकल [[डेटा निकालना]] और रिपोर्टिंग भाषा सहित कई तरह के [[संक्षिप्त नाम]] का उपयोग किया जा रहा है।<ref>{{cite web |url = http://linux.die.net/man/1/perl |title = पर्ल (1): प्रैक्टिकल एक्सट्रैक्शन/रिपोर्ट लैंग्वेज - लिनक्स मैन पेज|publisher = Linux.die.net |access-date = 2013-07-23 |archive-date = June 3, 2013 |archive-url = https://web.archive.org/web/20130603152544/http://linux.die.net/man/1/perl |url-status = live }}</ref> पर्ल को [[लैरी वॉल]] द्वारा 1987 में एक सामान्य-उद्देश्य वाली [[यूनिक्स]] स्क्रिप्टिंग भाषा के रूप में विकसित किया गया था जिससे कि रिपोर्ट प्रसंस्करण को आसान बनाया जा सके।<ref name="sheppard00">{{cite web |url = http://www.perl.com/pub/2000/10/begperl1.html |title = शुरुआती लोगों के लिए पर्ल का परिचय|last = Sheppard |first = Doug |date = 2000-10-16 |publisher = dev.perl.org |access-date = 2011-01-08 |archive-date = June 5, 2011 |archive-url = https://web.archive.org/web/20110605130400/http://www.perl.com/pub/2000/10/begperl1.html |url-status = live }}</ref> तब से, इसमें कई बदलाव और संशोधन हुए हैं। राकू, जो 2000 में पर्ल 5 के एक नए स्वरूप के रूप में प्रारभ्म हुआ, अंततः एक अलग भाषा में विकसित हुआ। दोनों भाषाएँ अलग-अलग विकास टीमों द्वारा स्वतंत्र रूप से विकसित की जा रही हैं और उदारतापूर्वक एक-दूसरे से विचार उधार लेती हैं।
 
चूंकि पर्ल का सामान्यतः संक्षिप्त रूप नहीं है,<ref>{{cite web |url = http://learn.perl.org/faq/perlfaq1.html#Whats-the-difference-between-perl-and-Perl |title = पर्ल के बारे में सामान्य प्रश्न|last = Lapworth |first = Leo |publisher = Perl.org |work = Perl FAQ |access-date = February 24, 2012 |archive-date = May 28, 2013 |archive-url = https://web.archive.org/web/20130528001715/http://learn.perl.org/faq/perlfaq1.html#Whats-the-difference-between-perl-and-Perl |url-status = live }}</ref> प्रैक्टिकल [[डेटा निकालना]] और रिपोर्टिंग भाषा सहित कई प्रकार से [[संक्षिप्त नाम]] का उपयोग किया जा रहा है।<ref>{{cite web |url = http://linux.die.net/man/1/perl |title = पर्ल (1): प्रैक्टिकल एक्सट्रैक्शन/रिपोर्ट लैंग्वेज - लिनक्स मैन पेज|publisher = Linux.die.net |access-date = 2013-07-23 |archive-date = June 3, 2013 |archive-url = https://web.archive.org/web/20130603152544/http://linux.die.net/man/1/perl |url-status = live }}</ref> पर्ल को [[लैरी वॉल]] द्वारा 1987 में सामान्य-उद्देश्य वाली [[यूनिक्स]] स्क्रिप्टिंग भाषा के रूप में विकसित किया गया था, जिससे कि रिपोर्ट प्रसंस्करण को सरल बनाया जा सके।<ref name="sheppard00">{{cite web |url = http://www.perl.com/pub/2000/10/begperl1.html |title = शुरुआती लोगों के लिए पर्ल का परिचय|last = Sheppard |first = Doug |date = 2000-10-16 |publisher = dev.perl.org |access-date = 2011-01-08 |archive-date = June 5, 2011 |archive-url = https://web.archive.org/web/20110605130400/http://www.perl.com/pub/2000/10/begperl1.html |url-status = live }}</ref> तत्पश्चात, इसमें कई परिवर्तन और संशोधन हुए हैं। राकू, जो 2000 में पर्ल 5 के नए स्वरूप के रूप में प्रारभ्म हुआ, अंततः भिन्न भाषा में विकसित हुआ। दोनों भाषाएँ भिन्न-भिन्न विकास टीमों द्वारा स्वतंत्र रूप से विकसित की जा रही हैं और उदारतापूर्वक एक-दूसरे से विचार उधार लेती हैं।
 
पर्ल भाषाएँ C(प्रोग्रामिंग भाषा), [[यूनिक्स खोल|यूनिक्स शेल]], [[AWK (प्रोग्रामिंग भाषा)]], और [[sed]] सहित अन्य प्रोग्रामिंग भाषाओं से सुविधाएँ उधार लेती हैं;<ref name="perltimeline">{{cite web |url = http://history.perl.org/PerlTimeline.html |title = पर्ल और इसकी संस्कृति की समयरेखा (v3.0_0505)|year = 1999 |author = Ashton, Elaine |access-date = March 12, 2004 |archive-date = January 11, 2013 |archive-url = https://web.archive.org/web/20130111100906/http://history.perl.org/PerlTimeline.html |url-status = live }}</ref> वे यूनिक्स कमांड की कई समकालीन सूची की मनमानी डेटा-लंबाई सीमा के बिना टेक्स्ट प्रोसेसिंग सुविधाएं प्रदान करते हैं।<ref name="programmingperl2">{{cite book |title = प्रोग्रामिंग पर्ल, तीसरा संस्करण|date = July 2000 |publisher = [[O'Reilly Media]] |isbn = 978-0-596-00027-1 |last1=Wall|first1=Larry|author-link1=Larry Wall|last2= Christiansen|first2=Tom|last3=Orwant|first3=Jon}}</ref> पर्ल 5 ने 1990 के दशक के अंत में अपनी शक्तिशाली [[नियमित अभिव्यक्ति]] और [[स्ट्रिंग (कंप्यूटिंग)|स्ट्रिंग]] [[पदच्छेद|पार्सिंग]] क्षमताओं के कारण [[कॉमन गेटवे इंटरफ़ेस]] भाषा के रूप में व्यापक लोकप्रियता प्राप्त की।<ref>{{cite web |url = http://www.catb.org/esr/writings/taoup/html/ch14s04.html#perl |title = भाषा मूल्यांकन|quote = पर्ल का सबसे मजबूत बिंदु पाठ्य, रेखा-उन्मुख डेटा स्वरूपों के पैटर्न-निर्देशित प्रसंस्करण के लिए इसकी अत्यधिक शक्तिशाली अंतर्निहित सुविधाएं हैं; यह इस पर बेजोड़ है।|access-date = January 30, 2015 |archive-date = March 10, 2015 |archive-url = https://web.archive.org/web/20150310123855/http://www.catb.org/esr/writings/taoup/html/ch14s04.html#perl |url-status = live }}</ref><ref>{{cite web |url = http://www.cio.com/article/2437271/developer/you-used-perl-to-write-what--.html |title = क्या लिखने के लिए आपने पर्ल का इस्तेमाल किया?!|date = January 24, 2008 |quote = पर्ल हमेशा किसी भी कार्य के लिए पसंदीदा भाषा रही है जिसमें पैटर्न-मिलान इनपुट शामिल होता है|access-date = February 4, 2015 |archive-date = February 4, 2015 |archive-url = https://web.archive.org/web/20150204175543/http://www.cio.com/article/2437271/developer/you-used-perl-to-write-what--.html |url-status = live }}</ref><ref>{{cite web |url = http://archive.oreilly.com/pub/a/oreilly/perl/news/importance_0498.html |title = पर्ल का महत्व|quote = टेक्स्ट को प्रोसेस करने की पर्ल की अद्वितीय क्षमता...|access-date = February 4, 2015 |archive-url = https://web.archive.org/web/20150202010003/http://archive.oreilly.com/pub/a/oreilly/perl/news/importance_0498.html |archive-date = February 2, 2015 |url-status = dead |df = mdy-all }}</ref><ref name="roderick02">{{cite book |title = उन्नत लिनक्स नेटवर्किंग|url = https://archive.org/details/linux00libg_999 |url-access = limited |date = June 21, 2002 |publisher = Addison-Wesley Professional |isbn = 978-0-201-77423-8 |page = [https://archive.org/details/linux00libg_999/page/n595 594] |last1 = Smith |first1 = Roderick W. }}</ref>
 
सीजीआई के अतिरिक्त, पर्ल 5 का उपयोग [[कार्यकारी प्रबंधक]], [[कंप्यूटर नेटवर्क प्रोग्रामिंग|नेटवर्क प्रोग्रामिंग]], वित्त, जैव सूचना विज्ञान और अन्य अनुप्रयोगों जैसे [[ग्राफिकल यूज़र इंटरफ़ेस]] के लिए किया जाता है। इसके कोमलता और शक्ति के कारण इसे स्क्रिप्टिंग भाषाओं की स्विस आर्मी चेनसॉ का उपनाम दिया गया है,<ref>{{cite web |url = http://www.perl.com/pub/a/2000/10/begperl1.html |title = शुरुआती लोगों के लिए पर्ल का परिचय|last = Sheppard |first = Doug |date = 2000-10-16 |publisher = [[O'Reilly Media]] |access-date = 2008-07-27 |archive-date = June 4, 2008 |archive-url = https://web.archive.org/web/20080604140740/http://www.perl.com/pub/a/2000/10/begperl1.html |url-status = live }}</ref> और यह भी कि कुछ अन्य भाषाओं की तुलना में अधिक विशेष वर्णों के उपयोग के कारण कुरूपता पर विचार करते हैं।<ref>{{cite web |url = http://www.catb.org/jargon/html/S/Swiss-Army-chainsaw.html |title = स्विस आर्मी चेनसॉ|last = Raymond |first = Eric |date = 2003-12-23 |work = The Jargon File |access-date = 2014-11-29 |archive-date = August 14, 2018 |archive-url = https://web.archive.org/web/20180814171034/http://www.catb.org/jargon/html/S/Swiss-Army-chainsaw.html |url-status = live }}</ref> 1998 में, इसे [[डक्ट टेप]] के रूप में भी संदर्भित किया गया था जो [[इंटरनेट]] को साथ रखता है, [[गोंद भाषा|ग्लू भाषा]] के रूप में इसके सर्वव्यापी उपयोग और इसकी कथित अयोग्यता दोनों के संदर्भ में होते है।<ref name="leonard98">{{cite news |url = http://www.salon.com/1998/10/13/feature_269/ |title = पर्ल की खुशी|last = Leonard |first = Andrew |work = [[Salon.com]] |access-date = 2012-06-05 |archive-date = July 6, 2012 |archive-url = https://web.archive.org/web/20120706094345/http://www.salon.com/1998/10/13/feature_269/ |url-status = live }}</ref>
 
पर्ल अत्यधिक [[अभिव्यंजक शक्ति (कंप्यूटर विज्ञान)|अभिव्यंजक प्रोग्रामिंग]] भाषा है: किसी दिए गए एल्गोरिथ्म के लिए स्रोत कोड लघु और अत्यधिक संकुचित हो सकता है।<ref>{{Cite web|title=प्रोग्राम कैसे मापे जाते हैं {{!}} कंप्यूटर भाषा बेंचमार्क गेम|url=https://benchmarksgame-team.pages.debian.net/benchmarksgame/how-programs-are-measured.html#source-code|access-date=2020-10-05|website=benchmarksgame-team.pages.debian.net|archive-date=July 12, 2020|archive-url=https://web.archive.org/web/20200712000728/https://benchmarksgame-team.pages.debian.net/benchmarksgame/how-programs-are-measured.html#source-code|url-status=live}}</ref><ref>{{Cite web|title=पर्ल की 3 पंक्तियों में RSA - Everything2.com|url=https://everything2.com/title/RSA+in+3+lines+of+perl|access-date=2020-10-05|website=everything2.com|archive-date=October 8, 2020|archive-url=https://web.archive.org/web/20201008120935/https://everything2.com/title/RSA+in+3+lines+of+perl|url-status=live}}</ref>


पर्ल भाषाएँ C(प्रोग्रामिंग भाषा), [[यूनिक्स खोल]], [[AWK (प्रोग्रामिंग भाषा)]], और [[sed]] सहित अन्य प्रोग्रामिंग भाषाओं से सुविधाएँ उधार लेती हैं;<ref name="perltimeline">{{cite web |url = http://history.perl.org/PerlTimeline.html |title = पर्ल और इसकी संस्कृति की समयरेखा (v3.0_0505)|year = 1999 |author = Ashton, Elaine |access-date = March 12, 2004 |archive-date = January 11, 2013 |archive-url = https://web.archive.org/web/20130111100906/http://history.perl.org/PerlTimeline.html |url-status = live }}</ref> वे यूनिक्स कमांड की कई समकालीन सूची की मनमानी डेटा-लंबाई सीमा के बिना टेक्स्ट प्रोसेसिंग सुविधाएं प्रदान करते हैं।<ref name="programmingperl2">{{cite book |title = प्रोग्रामिंग पर्ल, तीसरा संस्करण|date = July 2000 |publisher = [[O'Reilly Media]] |isbn = 978-0-596-00027-1 |last1=Wall|first1=Larry|author-link1=Larry Wall|last2= Christiansen|first2=Tom|last3=Orwant|first3=Jon}}</ref> पर्ल 5 ने 1990 के दशक के अंत में अपनी शक्तिशाली [[नियमित अभिव्यक्ति]] और [[स्ट्रिंग (कंप्यूटिंग)]] [[पदच्छेद]] क्षमताओं के कारण एक [[कॉमन गेटवे इंटरफ़ेस]] भाषा के रूप में व्यापक लोकप्रियता प्राप्त की।<ref>{{cite web |url = http://www.catb.org/esr/writings/taoup/html/ch14s04.html#perl |title = भाषा मूल्यांकन|quote = पर्ल का सबसे मजबूत बिंदु पाठ्य, रेखा-उन्मुख डेटा स्वरूपों के पैटर्न-निर्देशित प्रसंस्करण के लिए इसकी अत्यधिक शक्तिशाली अंतर्निहित सुविधाएं हैं; यह इस पर बेजोड़ है।|access-date = January 30, 2015 |archive-date = March 10, 2015 |archive-url = https://web.archive.org/web/20150310123855/http://www.catb.org/esr/writings/taoup/html/ch14s04.html#perl |url-status = live }}</ref><ref>{{cite web |url = http://www.cio.com/article/2437271/developer/you-used-perl-to-write-what--.html |title = क्या लिखने के लिए आपने पर्ल का इस्तेमाल किया?!|date = January 24, 2008 |quote = पर्ल हमेशा किसी भी कार्य के लिए पसंदीदा भाषा रही है जिसमें पैटर्न-मिलान इनपुट शामिल होता है|access-date = February 4, 2015 |archive-date = February 4, 2015 |archive-url = https://web.archive.org/web/20150204175543/http://www.cio.com/article/2437271/developer/you-used-perl-to-write-what--.html |url-status = live }}</ref><ref>{{cite web |url = http://archive.oreilly.com/pub/a/oreilly/perl/news/importance_0498.html |title = पर्ल का महत्व|quote = टेक्स्ट को प्रोसेस करने की पर्ल की अद्वितीय क्षमता...|access-date = February 4, 2015 |archive-url = https://web.archive.org/web/20150202010003/http://archive.oreilly.com/pub/a/oreilly/perl/news/importance_0498.html |archive-date = February 2, 2015 |url-status = dead |df = mdy-all }}</ref><ref name="roderick02">{{cite book |title = उन्नत लिनक्स नेटवर्किंग|url = https://archive.org/details/linux00libg_999 |url-access = limited |date = June 21, 2002 |publisher = Addison-Wesley Professional |isbn = 978-0-201-77423-8 |page = [https://archive.org/details/linux00libg_999/page/n595 594] |last1 = Smith |first1 = Roderick W. }}</ref>
CGI के अतिरिक्त, पर्ल 5 का उपयोग [[कार्यकारी प्रबंधक]], [[कंप्यूटर नेटवर्क प्रोग्रामिंग]], वित्त, जैव सूचना विज्ञान और अन्य अनुप्रयोगों जैसे [[ग्राफिकल यूज़र इंटरफ़ेस]] के लिए किया जाता है। इसके लचीलेपन और शक्ति के कारण  <!-- Note to editors. This should read *chainsaw*, not knife. Check the ref -->इसे स्क्रिप्टिंग भाषाओं की स्विस आर्मी चेनसॉ का उपनाम दिया गया है,<ref>{{cite web |url = http://www.perl.com/pub/a/2000/10/begperl1.html |title = शुरुआती लोगों के लिए पर्ल का परिचय|last = Sheppard |first = Doug |date = 2000-10-16 |publisher = [[O'Reilly Media]] |access-date = 2008-07-27 |archive-date = June 4, 2008 |archive-url = https://web.archive.org/web/20080604140740/http://www.perl.com/pub/a/2000/10/begperl1.html |url-status = live }}</ref> और वह भी जिसे कुछ लोग कुरूपता मानते हैं<ref>{{cite web |url = http://www.catb.org/jargon/html/S/Swiss-Army-chainsaw.html |title = स्विस आर्मी चेनसॉ|last = Raymond |first = Eric |date = 2003-12-23 |work = The Jargon File |access-date = 2014-11-29 |archive-date = August 14, 2018 |archive-url = https://web.archive.org/web/20180814171034/http://www.catb.org/jargon/html/S/Swiss-Army-chainsaw.html |url-status = live }}</ref> कई अन्य भाषाओं की तुलना में इसके अधिक विशेष वर्णों के उपयोग के कारण। 1998 में, इसे [[डक्ट टेप]] के रूप में भी संदर्भित किया गया था जो [[इंटरनेट]] को एक साथ रखता है, [[गोंद भाषा]] के रूप में इसके सर्वव्यापी उपयोग और इसकी कथित अयोग्यता दोनों के संदर्भ में।<ref name="leonard98">{{cite news |url = http://www.salon.com/1998/10/13/feature_269/ |title = पर्ल की खुशी|last = Leonard |first = Andrew |work = [[Salon.com]] |access-date = 2012-06-05 |archive-date = July 6, 2012 |archive-url = https://web.archive.org/web/20120706094345/http://www.salon.com/1998/10/13/feature_269/ |url-status = live }}</ref>
पर्ल अत्यधिक [[अभिव्यंजक शक्ति (कंप्यूटर विज्ञान)]] प्रोग्रामिंग भाषा है: किसी दिए गए एल्गोरिथ्म के लिए स्रोत कोड छोटा और अत्यधिक संकुचित हो सकता है।<ref>{{Cite web|title=प्रोग्राम कैसे मापे जाते हैं {{!}} कंप्यूटर भाषा बेंचमार्क गेम|url=https://benchmarksgame-team.pages.debian.net/benchmarksgame/how-programs-are-measured.html#source-code|access-date=2020-10-05|website=benchmarksgame-team.pages.debian.net|archive-date=July 12, 2020|archive-url=https://web.archive.org/web/20200712000728/https://benchmarksgame-team.pages.debian.net/benchmarksgame/how-programs-are-measured.html#source-code|url-status=live}}</ref><ref>{{Cite web|title=पर्ल की 3 पंक्तियों में RSA - Everything2.com|url=https://everything2.com/title/RSA+in+3+lines+of+perl|access-date=2020-10-05|website=everything2.com|archive-date=October 8, 2020|archive-url=https://web.archive.org/web/20201008120935/https://everything2.com/title/RSA+in+3+lines+of+perl|url-status=live}}</ref>





Revision as of 19:37, 8 January 2023

पर्ल
File:Perl language logo.svg
ParadigmMulti-paradigm: functional, imperative, object-oriented (class-based), reflective
द्वारा डिज़ाइन किया गयाLarry Wall
DeveloperLarry Wall
पहली प्रस्तुतिDecember 18, 1987; 38 years ago (1987-12-18)[1]
Stable release
  • 5.36.0[2] / 28 May 2022; 4 years ago (2022-05-28)
  • 5.34.1[3] / 13 March 2022; 4 years ago (2022-03-13)
Preview release
5.37.6[4] / 21 November 2022; 3 years ago (2022-11-21)
टाइपिंग अनुशासनDynamic
कार्यान्वयन भाषाC
ओएसCross-platform
लाइसेंसArtistic License 1.0[5][6] or GNU General Public License[7]
फ़ाइल नाम एक्सटेंशनएस.plx, .pl, .pm, .xs, .t, .pod, .cgi
वेबसाइटperl.org
Influenced by
AWK, BASIC, C, C++, Lisp, sed, Unix shell[8]
Influenced
CoffeeScript,[citation needed] Groovy,[citation needed] JavaScript, Julia, LPC, PHP, Python, Raku, Ruby, PowerShell

पर्ल दो उच्च-स्तरीय, सामान्य-उद्देश्य, व्याख्या की गई, गतिशील प्रोग्रामिंग भाषाओं का परिवार है। पर्ल 5 को संदर्भित करता है, लेकिन 2000 से 2019 तक इसने स्वयं पुन: डिज़ाइन की गई सह-भाषा, पर्ल 6 को भी संदर्भित किया, इससे पहले कि अक्टूबर 2019 में बाद के नाम को सामान्यतः राकू (प्रोग्रामिंग भाषा) में परिवर्तन कर दिया गया।[9][10]

चूंकि पर्ल का सामान्यतः संक्षिप्त रूप नहीं है,[11] प्रैक्टिकल डेटा निकालना और रिपोर्टिंग भाषा सहित कई प्रकार से संक्षिप्त नाम का उपयोग किया जा रहा है।[12] पर्ल को लैरी वॉल द्वारा 1987 में सामान्य-उद्देश्य वाली यूनिक्स स्क्रिप्टिंग भाषा के रूप में विकसित किया गया था, जिससे कि रिपोर्ट प्रसंस्करण को सरल बनाया जा सके।[13] तत्पश्चात, इसमें कई परिवर्तन और संशोधन हुए हैं। राकू, जो 2000 में पर्ल 5 के नए स्वरूप के रूप में प्रारभ्म हुआ, अंततः भिन्न भाषा में विकसित हुआ। दोनों भाषाएँ भिन्न-भिन्न विकास टीमों द्वारा स्वतंत्र रूप से विकसित की जा रही हैं और उदारतापूर्वक एक-दूसरे से विचार उधार लेती हैं।

पर्ल भाषाएँ C(प्रोग्रामिंग भाषा), यूनिक्स शेल, AWK (प्रोग्रामिंग भाषा), और sed सहित अन्य प्रोग्रामिंग भाषाओं से सुविधाएँ उधार लेती हैं;[1] वे यूनिक्स कमांड की कई समकालीन सूची की मनमानी डेटा-लंबाई सीमा के बिना टेक्स्ट प्रोसेसिंग सुविधाएं प्रदान करते हैं।[14] पर्ल 5 ने 1990 के दशक के अंत में अपनी शक्तिशाली नियमित अभिव्यक्ति और स्ट्रिंग पार्सिंग क्षमताओं के कारण कॉमन गेटवे इंटरफ़ेस भाषा के रूप में व्यापक लोकप्रियता प्राप्त की।[15][16][17][18]

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

पर्ल अत्यधिक अभिव्यंजक प्रोग्रामिंग भाषा है: किसी दिए गए एल्गोरिथ्म के लिए स्रोत कोड लघु और अत्यधिक संकुचित हो सकता है।[22][23]


नाम

पर्ल को मूल रूप से "पर्ल" नाम दिया गया था। वॉल सकारात्मक अर्थों के साथ भाषा को एक छोटा नाम देना चाहते थे। वॉल ने पर्ल के आधिकारिक प्रदर्शन से पहले वर्तमान समय की पर्ल (प्रोग्रामिंग भाषा) प्रोग्रामिंग भाषा की खोज की और नाम की वर्तनी बदल दी।[24] भाषा का वर्णन करते समय, नाम पूंजीकृत होता है: पर्ल। प्रोग्राम का संदर्भ देते समय, नाम अनकैपिटलाइज्ड (पर्ल) होता है क्योंकि अधिकांश यूनिक्स-जैसी फाइल सिस्टम केस-संवेदी होते हैं। प्रोग्रामिंग पर्ल के पहले संस्करण के जारी होने से पहले, भाषा को पर्ल के रूप में संदर्भित करना आम बात थी।चूंकि, रैंडल एल. श्वार्ट्ज ने पुस्तक में भाषा के नाम को पूंजीकृत किया ताकि टाइपसेट करते समय इसे बेहतर तरीके से प्रदर्शित किया जा सके। इस स्थिति के भेद को बाद में विहित के रूप में प्रलेखित किया गया था।[25] नाम को कभी-कभी संक्षिप्त नाम के रूप में विस्तारित किया जाता है: प्रैक्टिकल एक्सट्रैक्शन और रिपोर्ट भाषा[26] और वॉल्स ओन पैथोलॉजिकली इक्लेक्टिक रबिश लिस्टर जो पर्ल के मैनुअल पेज में है।[27]


इतिहास

प्रारंभिक संस्करण

लैरी वॉल ने 1987 में यूनिसिस में एक प्रोग्रामर के रूप में काम करते हुए।[14]और 18 दिसंबर 1987 को संस्करण 1.0 पर पर्ल पर काम करना प्रारम्भ किया।[1]अगले कुछ वर्षों में भाषा का तेजी से विस्तार हुआ।

1988 में रिलीज़ हुई पर्ल 2 में एक बेहतर रेगुलर एक्सप्रेशन इंजन था। 1989 में जारी पर्ल 3 ने बाइनरी डेटा स्ट्रीम के लिए समर्थन जोड़ा।[citation needed] मूल रूप से, पर्ल के लिए एकमात्र दस्तावेज एक लंबा मैन पेज था। 1991 में, प्रोग्रामिंग पर्ल, जिसे कई पर्ल प्रोग्रामर अपने कवर के कारण कैमल बुक के रूप में जानते थे, प्रकाशित हुआ और भाषा के लिए वास्तविक संदर्भ बन गया। उसी समय, पर्ल संस्करण संख्या को 4 तक बढ़ा दिया गया था, भाषा में एक बड़े बदलाव को चिह्नित करने के लिए नहीं अन्यथा पुस्तक द्वारा अच्छी तरह से प्रलेखित संस्करण की पहचान करने के लिए।[citation needed]


अर्ली पर्ल 5

पर्ल 4 रखरखाव रिलीज की एक श्रृंखला के माध्यम से चला गया, 1993 में पर्ल 4.036 में समाप्त हुआ, जिसके बाद वॉल ने पर्ल 5 पर काम प्रारभ्म करने के लिए पर्ल 4 को छोड़ दिया। पर्ल 5 का प्रारंभिक डिजाइन 1994 में जारी रहा। पर्ल 5 को अलग-अलग प्लेटफॉर्म पर पोर्ट करने के काम को समन्वित करें। यह पर्ल 5 के विकास, रखरखाव और पोर्टिंग के लिए प्राथमिक मंच बना हुआ है।[28] पर्ल 5.000 को 17 अक्टूबर 1994 को जारी किया गया था।[29] यह दुभाषिया (कंप्यूटिंग) का लगभग पूर्ण पुनर्लेखन था, और इसने ऑब्जेक्ट (कंप्यूटर विज्ञान), संदर्भ (कंप्यूटर विज्ञान), स्थानीय चर | लेक्सिकल (मेरा) चर, और मॉड्यूलर प्रोग्रामिंग सहित भाषा में कई नई सुविधाएँ जोड़ीं। महत्वपूर्ण रूप से, मॉड्यूल ने दुभाषिया को संशोधित किए बिना भाषा को विस्तारित करने के लिए एक तंत्र प्रदान किया। इसने कोर दुभाषिया को स्थिर करने की अनुमति दी, भले ही इसने साधारण पर्ल प्रोग्रामर को नई भाषा सुविधाओं को जोड़ने में सक्षम बनाया। पर्ल 5 तब से सक्रिय विकास में है।

पर्ल 5.001 को 13 मार्च, 1995 को जारी किया गया था। पर्ल 5.002 को 29 फरवरी, 1996 को नए प्रोटोटाइप फीचर के साथ जारी किया गया था। इसने मॉड्यूल लेखकों को सबरूटीन्स बनाने की अनुमति दी जो पर्ल शेल निर्मित की तरह व्यवहार करते थे। पर्ल 5.003 को सुरक्षा रिलीज़ के रूप में 25 जून 1996 को रिलीज़ किया गया था।[30] पर्ल 5 इतिहास की सबसे महत्वपूर्ण घटनाओं में से एक भाषा के बाहर घटित हुई और यह इसके मॉड्यूल समर्थन का परिणाम था। 26 अक्टूबर 1995 को, सीपीएएन (सीपीएएन) को पर्ल भाषा और पर्ल मॉड्यूल के लिए एक सॉफ्टवेयर रिपॉजिटरी के रूप में स्थापित किया गया था; मई 2017 तक, इसमें 35,190 वितरणों में 185,178 से अधिक मॉड्यूल हैं, जो 13,071 से अधिक लेखकों द्वारा लिखे गए हैं, और दुनिया भर में 245 से अधिक स्थानों पर नजर आते हैं।[31] पर्ल 5.004 को 15 मई, 1997 को जारी किया गया था, और इसमें अन्य बातों के अतिरिक्त, यूनिवर्सल पैकेज सम्मिलित था, जिसमें पर्ल को एक आधार वस्तु दी गई थी जिससे सभी वर्ग (कंप्यूटर प्रोग्रामिंग) स्वचालित रूप से प्राप्त हुए थे और मॉड्यूल के संस्करणों की आवश्यकता की क्षमता थी। एक अन्य महत्वपूर्ण विकास CGI.pm मॉड्यूल का समावेश था,[32] जिसने कॉमन गेटवे इंटरफेस के रूप में पर्ल की लोकप्रियता में योगदान दिया।[33] पर्ल 5.004 ने माइक्रोसॉफ़्ट विंडोज़, बेल लैब्स, क्यूएनएक्स और एमिगाओएस से प्लान 9 के लिए समर्थन जोड़ा।[32]

पर्ल 5.005 को 22 जुलाई 1998 को जारी किया गया था। इस प्रदर्शन में रेगुलर एक्सप्रेशन इंजन में कई सुधार, बैकएंड में नए हुक सम्मिलित थे। B::* मॉड्यूल, द qr// रेगेक्स उद्धरण ऑपरेटर, अन्य नए कोर मॉड्यूल का एक बड़ा चयन, और BeOS समेत कई और ऑपरेटिंग सिस्टम के लिए अतिरिक्त समर्थन।[34]


2000–2020

Major version[29] Latest update[35]
Old version, no longer maintained: 5.4 1999-04-29
Old version, no longer maintained: 5.5 2004-02-23
Old version, no longer maintained: 5.6 2003-11-15
Old version, no longer maintained: 5.8 2008-12-14
Old version, no longer maintained: 5.10 2009-08-22
Old version, no longer maintained: 5.12 2012-11-10
Old version, no longer maintained: 5.14 2013-03-10
Old version, no longer maintained: 5.16 2013-03-11
Old version, no longer maintained: 5.18 2014-10-01
Old version, no longer maintained: 5.20 2015-09-12
Old version, no longer maintained: 5.22 2017-07-15
Old version, no longer maintained: 5.24 2018-04-14
Old version, no longer maintained: 5.26 2018-11-29
Old version, no longer maintained: 5.28 2020-06-01
Old version, no longer maintained: 5.30 2020-06-01
Old version, no longer maintained: 5.32 2021-01-23
Older version, yet still maintained: 5.34 2022-03-13
Current stable version: 5.36 2022-05-28
Latest preview version of a future release: 5.37 2022-10-20
Future release: 7.0 2023?
Legend:
Old version
Older version, still maintained
Current stable version
Latest preview version
Future release
</छोटा>

पर्ल 5.6 को 22 मार्च, 2000 को जारी किया गया था। प्रमुख परिवर्तनों में 64-बिट कंप्यूटिंग|64-बिट समर्थन, यूनिकोड स्ट्रिंग प्रतिनिधित्व, 2 GiB से अधिक फ़ाइलों के लिए समर्थन और हमारा कीवर्ड सम्मिलित थे।[36][37] पर्ल 5.6 को विकसित करते समय, सॉफ्टवेयर वर्जनिंग योजना को अन्य ओपन सोर्स प्रोजेक्ट्स के समान एक में बदलने का निर्णय लिया गया था; 5.005_63 के बाद, अगला संस्करण 5.5.640 बन गया, जिसमें विषम संख्या वाले विकास संस्करण और सम संख्या वाले स्थिर संस्करण की योजना थी।[38] 2000 में, वाल ने समुदाय से पर्ल के एक नए संस्करण के लिए सुझावों का आह्वान किया। इस प्रक्रिया के परिणामस्वरूप 361 RFC(टिप्पणियों के लिए अनुरोध) दस्तावेज़ तैयार हुए जिनका उपयोग पर्ल 6 के विकास में मार्गदर्शन के लिए किया जाना था। 2001 में,[39] पर्ल 6 के लिए सर्वनाश पर काम प्रारभ्म हुआ, दस्तावेजों की श्रृंखला जो परिवर्तन अनुरोधों को सारांशित करने और पर्ल की अगली पीढ़ी के डिजाइन को प्रस्तुत करने के लिए थी। उन्हें औपचारिक अधिकारपत्र के अतिरिक्त आरएफसी के डाइजेस्ट के रूप में प्रस्तुत किया गया था। इस बिंदु पर, पर्ल 6 केवल एक भाषा के विवरण के रूप में अस्तित्व में था।[citation needed] पर्ल 5.8 पहली बार 18 जुलाई, 2002 को जारी किया गया था, और तब से लगभग वार्षिक अद्यतन किया गया था। पर्ल 5.8 ने यूनिकोड समर्थन में सुधार किया, एक नया I/O कार्यान्वयन जोड़ा, एक नया थ्रेड कार्यान्वयन जोड़ा, संख्यात्मक सटीकता में सुधार किया, और कई नए मॉड्यूल जोड़े।[40] 2013 तक