पर्ल: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 351: Line 351:
{{Main|राकू (प्रोग्रामिंग भाषा)}}
{{Main|राकू (प्रोग्रामिंग भाषा)}}
[[Image:Camelia.svg|thumb|right|200px|कैमेलिया, पर्ल 6 प्रोजेक्ट का लोगो<ref>{{cite web |url = http://perl6.org/ |title = पर्ल 6|access-date = 2011-02-27 |publisher = The पर्ल 6Project |archive-date = February 21, 2011 |archive-url = https://web.archive.org/web/20110221094526/http://perl6.org/ |url-status = live }}</ref>]]2000 के पर्ल सम्मेलन में, जॉन ऑरवेंट ने प्रमुख नई भाषा-पहल के लिए स्थिति बनायीं ।<ref>{{cite web |url = http://www.nntp.perl.org/group/perl.perl6.meta/2000/10/msg424.html |title = लैरी की बात का प्रतिलेखन|access-date = 2011-01-25 |last = Torkington |first = Nathan |publisher = nntp.perl.org |archive-date = May 1, 2011 |archive-url = https://web.archive.org/web/20110501081806/http://www.nntp.perl.org/group/perl.perl6.meta/2000/10/msg424.html |url-status = live }}</ref> इसके कारण पर्ल 6 के कहे जाने वाले भाषा के नए स्वरूप पर काम प्रारम्भ करने का निर्णय लिया गया। पर्ल समुदाय से बड़े पैमाने पर नई भाषा सुविधाओं के प्रस्ताव मांगे गए, जिन्होंने टिप्पणियों के लिए 300 से अधिक अनुरोध प्रस्तुत किए।<ref>{{Cite web|title=Perl6 - पर्ल का भविष्य|url=https://www.java-samples.com/showtutorial.php?tutorialid=1443|access-date=2021-05-18|website=www.java-samples.com}}</ref>
[[Image:Camelia.svg|thumb|right|200px|कैमेलिया, पर्ल 6 प्रोजेक्ट का लोगो<ref>{{cite web |url = http://perl6.org/ |title = पर्ल 6|access-date = 2011-02-27 |publisher = The पर्ल 6Project |archive-date = February 21, 2011 |archive-url = https://web.archive.org/web/20110221094526/http://perl6.org/ |url-status = live }}</ref>]]2000 के पर्ल सम्मेलन में, जॉन ऑरवेंट ने प्रमुख नई भाषा-पहल के लिए स्थिति बनायीं ।<ref>{{cite web |url = http://www.nntp.perl.org/group/perl.perl6.meta/2000/10/msg424.html |title = लैरी की बात का प्रतिलेखन|access-date = 2011-01-25 |last = Torkington |first = Nathan |publisher = nntp.perl.org |archive-date = May 1, 2011 |archive-url = https://web.archive.org/web/20110501081806/http://www.nntp.perl.org/group/perl.perl6.meta/2000/10/msg424.html |url-status = live }}</ref> इसके कारण पर्ल 6 के कहे जाने वाले भाषा के नए स्वरूप पर काम प्रारम्भ करने का निर्णय लिया गया। पर्ल समुदाय से बड़े पैमाने पर नई भाषा सुविधाओं के प्रस्ताव मांगे गए, जिन्होंने टिप्पणियों के लिए 300 से अधिक अनुरोध प्रस्तुत किए।<ref>{{Cite web|title=Perl6 - पर्ल का भविष्य|url=https://www.java-samples.com/showtutorial.php?tutorialid=1443|access-date=2021-05-18|website=www.java-samples.com}}</ref>
वॉल ने अगले कुछ साल आरएफसी को पचाने और उन्हें पर्ल 6 के लिए एक सुसंगत ढांचे में संश्लेषित करने में बिताए। उन्होंने एपोकैलिप्स नामक दस्तावेजों की एक श्रृंखला में पर्ल 6 के लिए अपना डिजाइन प्रस्तुत किया।{{snd}}प्रोग्रामिंग पर्ल में अध्यायों के अनुरूप क्रमांकित। {{as of|2011|January}}, पर्ल 6 के विकासशील विनिर्देश को सिनॉप्सेस नामक डिज़ाइन दस्तावेज़ों में समझाया गया था{{snd}}सर्वनाश के अनुरूप क्रमांकित।<ref name="syn6">{{cite web |url = http://perlcabal.org/syn/ |title = आधिकारिक पर्ल 6 दस्तावेज़ीकरण|access-date = 2011-01-25 |publisher = The Perl 6 Project |archive-url = https://web.archive.org/web/20090831103918/http://perlcabal.org/syn/ |archive-date = August 31, 2009 |url-status = dead }}</ref>
वॉल ने अगले कुछ वर्ष आरएफसी और पर्ल 6 के लिए सुसंगत फ़्रेम में संश्लेषित किया। उन्होंने एपोकैलिप्स नामक दस्तावेजों की श्रृंखला में पर्ल 6 के लिए अपना डिजाइन दर्शाया{{snd}}प्रोग्रामिंग पर्ल में अध्यायों के अनुरूप क्रमांकित करना। {{as of|2011|जनवरी}}, पर्ल 6 के विकासशील विनिर्देश को सिनॉप्स नामक डिज़ाइन दस्तावेज़ों में समाहित किया गया था{{snd}}एपोकैलिप्स के अनुरूप क्रमांकित करना।<ref name="syn6">{{cite web |url = http://perlcabal.org/syn/ |title = आधिकारिक पर्ल 6 दस्तावेज़ीकरण|access-date = 2011-01-25 |publisher = The Perl 6 Project |archive-url = https://web.archive.org/web/20090831103918/http://perlcabal.org/syn/ |archive-date = August 31, 2009 |url-status = dead }}</ref>
ब्रैडली एम. कुह्न द्वारा थीसिस वर्क, वॉल द्वारा निरीक्षण, पर्ल के रनटाइम के रूप में [[जावा वर्चुअल मशीन]] के संभावित उपयोग पर विचार किया।<ref>{{cite journal |last = Kuhn |first = Bradley |author-link = Bradley M. Kuhn |title = पर्ल को जावा वर्चुअल मशीन में पोर्ट करने पर विचार|publisher = University of Cincinnati |date = January 2001 |url = http://www.ebb.org/bkuhn/writings/technical/thesis/ |access-date = 2008-06-28 |journal =  |archive-date = March 21, 2008 |archive-url = https://web.archive.org/web/20080321164747/http://ebb.org/bkuhn/writings/technical/thesis/ |url-status = live }}</ref> कुह्न की थीसिस ने इस दृष्टिकोण को समस्याग्रस्त दिखाया। 2001 में, यह निर्णय लिया गया कि पर्ल 6 पारट [[आभासी मशीन]] नामक क्रॉस-लैंग्वेज वर्चुअल मशीन पर चलेगा। इसका अर्थ यह होगा कि तोते को लक्षित करने वाली अन्य भाषाओं को सीपीएएन तक मूल पहुंच प्राप्त होगी, जिससे क्रॉस-लैंग्वेज विकास के कुछ स्तर की अनुमति होगी।{{cn|date=December 2020}}
 
2005 में, ऑड्रे टैंग ने पग्स (प्रोग्रामिंग) प्रोजेक्ट बनाया, हास्केल (प्रोग्रामिंग लैंग्वेज) में पर्ल 6 का कार्यान्वयन। इसने पर्ल 6 भाषा (वास्तविक कार्यान्वयन के विकास से अलग) के लिए एक परीक्षण मंच के रूप में कार्य करता है, और जारी रखता है।{{snd}}भाषा डिजाइनरों को अन्वेषण करने की अनुमति देता है। पग्स परियोजना ने [[मुफ़्त बाते|लाइबेरा चैट]] #राकू आईआरसी चैनल के आसपास केंद्रित एक सक्रिय पर्ल/हास्केल क्रॉस-लैंग्वेज समुदाय को जन्म दिया। पर्ल 6 डिज़ाइन टीम द्वारा कई कार्यात्मक प्रोग्रामिंग प्रभावों को अवशोषित किया गया।<ref>{{Cite book|last=Chromatic|url=https://books.google.com/books?id=JUjmsgEACAAJ|title=आधुनिक पर्ल|date=2015|publisher=Pragmatic Bookshelf|isbn=978-1-68050-088-2|language=en}}</ref>
ब्रैडली एम. कुह्न द्वारा थीसिस वर्क, वॉल द्वारा निरीक्षण, पर्ल के वर्त्तमान समय के रूप में [[जावा वर्चुअल मशीन]] के संभावित उपयोग पर विचार किया।<ref>{{cite journal |last = Kuhn |first = Bradley |author-link = Bradley M. Kuhn |title = पर्ल को जावा वर्चुअल मशीन में पोर्ट करने पर विचार|publisher = University of Cincinnati |date = January 2001 |url = http://www.ebb.org/bkuhn/writings/technical/thesis/ |access-date = 2008-06-28 |journal =  |archive-date = March 21, 2008 |archive-url = https://web.archive.org/web/20080321164747/http://ebb.org/bkuhn/writings/technical/thesis/ |url-status = live }}</ref> कुह्न की थीसिस ने इस दृष्टिकोण को समस्याग्रस्त दिखाया। 2001 में, यह निर्णय लिया गया कि पर्ल 6 पैरेट [[आभासी मशीन]] नामक क्रॉस-लैंग्वेज वर्चुअल मशीन पर चलेगा। इसका अर्थ यह होगा कि पैरेट को लक्षित करने वाली अन्य भाषाओं को सीपीएएन तक मूल पहुंच प्राप्त होगी, जिससे क्रॉस-लैंग्वेज विकास के कुछ स्तर की अनुमति होगी।{{cn|date=December 2020}}
 
2005 में, ऑड्रे टैंग ने पग्स (प्रोग्रामिंग) प्रोजेक्ट बनाया, हास्केल (प्रोग्रामिंग लैंग्वेज) में पर्ल 6 का कार्यान्वयन है। यह पर्ल 6 भाषा (वास्तविक कार्यान्वयन के विकास से भिन्न) के लिए परीक्षण मंच के रूप में कार्य करता है, और प्रस्तावित रखता है{{snd}}भाषा डिजाइनरों को अन्वेषण करने की अनुमति देता है। पग्स परियोजना ने [[मुफ़्त बाते|लाइबेरा चैट]] राकू आईआरसी चैनल के निकटतम केंद्रित सक्रिय पर्ल/हास्केल क्रॉस-लैंग्वेज समुदाय को उत्पन्न किया। पर्ल 6 डिज़ाइन टीम द्वारा कई कार्यात्मक प्रोग्रामिंग प्रभावों को अवशोषित किया गया।<ref>{{Cite book|last=Chromatic|url=https://books.google.com/books?id=JUjmsgEACAAJ|title=आधुनिक पर्ल|date=2015|publisher=Pragmatic Bookshelf|isbn=978-1-68050-088-2|language=en}}</ref>
 
2012 में, पर्ल 6 का विकास मुख्य रूप से दो कंपाइलरों पर केंद्रित था:<ref>{{cite web |url = http://perl6.org/compilers/features |title = पर्ल 6 कंपाइलर्स की फीचर तुलना|access-date = March 28, 2012 |archive-url = https://web.archive.org/web/20170811073233/https://perl6.org/compilers/features |archive-date = August 11, 2017 |url-status = dead }}</ref>
2012 में, पर्ल 6 का विकास मुख्य रूप से दो कंपाइलरों पर केंद्रित था:<ref>{{cite web |url = http://perl6.org/compilers/features |title = पर्ल 6 कंपाइलर्स की फीचर तुलना|access-date = March 28, 2012 |archive-url = https://web.archive.org/web/20170811073233/https://perl6.org/compilers/features |archive-date = August 11, 2017 |url-status = dead }}</ref>
# Rakudo, Parrot वर्चुअल मशीन और Java वर्चुअल मशीन पर चलने वाला कार्यान्वयन।<ref>{{cite web |last = Worthington |first = Jonathan |title = Rakudo JVM समाचार: अधिक परीक्षण, साथ ही थ्रेड और प्रॉमिस प्रोटोटाइप|url = http://6guts.wordpress.com/2013/07/15/rakudo-jvm-news-more-tests-plus-thread-and-promise-prototypes/ |work = 6guts |date = July 15, 2013 |access-date = July 24, 2013 |archive-date = October 5, 2013 |archive-url = https://web.archive.org/web/20131005055559/http://6guts.wordpress.com/2013/07/15/rakudo-jvm-news-more-tests-plus-thread-and-promise-prototypes/ |url-status = live }}</ref>
# रकूदो, पैरेट वर्चुअल मशीन और जावा वर्चुअल मशीन पर चलने वाला कार्यान्वयन।<ref>{{cite web |last = Worthington |first = Jonathan |title = Rakudo JVM समाचार: अधिक परीक्षण, साथ ही थ्रेड और प्रॉमिस प्रोटोटाइप|url = http://6guts.wordpress.com/2013/07/15/rakudo-jvm-news-more-tests-plus-thread-and-promise-prototypes/ |work = 6guts |date = July 15, 2013 |access-date = July 24, 2013 |archive-date = October 5, 2013 |archive-url = https://web.archive.org/web/20131005055559/http://6guts.wordpress.com/2013/07/15/rakudo-jvm-news-more-tests-plus-thread-and-promise-prototypes/ |url-status = live }}</ref>
# [[Niecza]], जो [[सामान्य भाषा रनटाइम]] को टारगेट करती है।
# [[Niecza|नैक्ज़ा]], जो [[सामान्य भाषा रनटाइम|सामान्य भाषा वर्त्तमान समय]] को लक्षित करता है।
 
2013 में, [[MoarVM|मोअरवम]] ("मेटामॉडल ऑन ए वर्त्तमान समय"), मुख्य रूप से राकुडो के लिए डिज़ाइन की गई सी भाषा-आधारित वर्चुअल मशीन की घोषणा की गई थी।<ref>{{cite web |last = Worthington |first = Jonathan |title = MoarVM: NQP और Rakudo के लिए एक वर्चुअल मशीन|url = http://6guts.wordpress.com/2013/05/31/moarvm-a-virtual-machine-for-nqp-and-rakudo/ |work = 6guts |date = May 31, 2013 |access-date = July 24, 2013 |archive-date = July 9, 2013 |archive-url = https://web.archive.org/web/20130709185252/http://6guts.wordpress.com/2013/05/31/moarvm-a-virtual-machine-for-nqp-and-rakudo/ |url-status = live }}</ref>


2013 में, [[MoarVM]] ("मेटामॉडल ऑन ए रनटाइम"), मुख्य रूप से राकुडो के लिए डिज़ाइन की गई एक सी भाषा-आधारित वर्चुअल मशीन की घोषणा की गई थी।<ref>{{cite web |last = Worthington |first = Jonathan |title = MoarVM: NQP और Rakudo के लिए एक वर्चुअल मशीन|url = http://6guts.wordpress.com/2013/05/31/moarvm-a-virtual-machine-for-nqp-and-rakudo/ |work = 6guts |date = May 31, 2013 |access-date = July 24, 2013 |archive-date = July 9, 2013 |archive-url = https://web.archive.org/web/20130709185252/http://6guts.wordpress.com/2013/05/31/moarvm-a-virtual-machine-for-nqp-and-rakudo/ |url-status = live }}</ref>
अक्टूबर 2019 में, पर्ल 6 का नाम परिवर्तित करके राकू कर दिया गया।<ref>{{cite web |url=https://lwn.net/Articles/802329/ |title=नाम बदलें|access-date=November 10, 2019 |archive-url=https://web.archive.org/web/20191017155422/https://lwn.net/Articles/802329/ |archive-date=October 17, 2019 |url-status=dead }}</ref>
अक्टूबर 2019 में, पर्ल 6 का नाम परिवर्तित करके राकू कर दिया गया।<ref>{{cite web |url=https://lwn.net/Articles/802329/ |title=नाम बदलें|access-date=November 10, 2019 |archive-url=https://web.archive.org/web/20191017155422/https://lwn.net/Articles/802329/ |archive-date=October 17, 2019 |url-status=dead }}</ref>


{{As of|2017}} केवल Rakudo कार्यान्वयन और MoarVM सक्रिय विकास के अधीन हैं, और अन्य आभासी मशीनें, जैसे कि जावा वर्चुअल मशीन और जावास्क्रिप्ट, समर्थित हैं।<ref>{{cite web |url=https://github.com/rakudo/rakudo/ |title=ऊंट|publisher=GitHub.com |access-date=2013-09-21 |archive-date=July 29, 2017 |archive-url=https://web.archive.org/web/20170729084734/https://github.com/rakudo/rakudo/ |url-status=live }}</ref>
{{As of|2017}} केवल रकूदो कार्यान्वयन और मोअरवम सक्रिय विकास के अधीन हैं, और अन्य आभासी मशीनें, जैसे कि जावा वर्चुअल मशीन और जावास्क्रिप्ट, समर्थित हैं।<ref>{{cite web |url=https://github.com/rakudo/rakudo/ |title=ऊंट|publisher=GitHub.com |access-date=2013-09-21 |archive-date=July 29, 2017 |archive-url=https://web.archive.org/web/20170729084734/https://github.com/rakudo/rakudo/ |url-status=live }}</ref>
 





Revision as of 21:48, 10 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 में पर्ल पर काम करना प्रारम्भ किया, जबकि यूनिसिस में 18 दिसंबर, 1987 को संस्करण 1.0 में प्रोग्रामर के रूप में काम कर रहे थे।[14][1]अगले कुछ वर्षों में भाषा का अधिक विस्तार हुआ।

1988 में प्रस्तावित हुई पर्ल 2 में अच्छा रेगुलर एक्सप्रेशन इंजन था। 1989 में प्रस्तावित पर्ल 3 ने बाइनरी डेटा स्ट्रीम के लिए समर्थन जोड़ा।[citation needed]

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


प्रारंभिक पर्ल 5

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

पर्ल 5.000 को 17 अक्टूबर 1994 को प्रस्तावित किया गया था।[29] यह दुभाषिया का लगभग पूर्ण पुनर्लेखन था, और इसने भाषा में कई नई सुविधाएँ जोड़ीं, जिनमें वस्तुएँ, संदर्भ, स्थानीय चर, शाब्दिक चर, और मॉड्यूलर सम्मलित हैं। महत्वपूर्ण रूप से, मॉड्यूल ने दुभाषिया को संशोधित किए बिना भाषा को विस्तारित करने के लिए तंत्र प्रदान किया। इसने कोर दुभाषिया को स्थिर करने की अनुमति दी, भले ही इसने साधारण पर्ल प्रोग्रामर को नई भाषा सुविधाओं को जोड़ने में सक्षम बनाया। पर्ल 5 सक्रिय विकास में है।

पर्ल 5.001 को 13 मार्च, 1995 को प्रस्तावित किया गया था। पर्ल 5.002 को 29 फरवरी, 1996 को नए प्रोटोटाइप विशेषता के साथ प्रस्तावित किया गया था। इसने मॉड्यूल लेखकों को उप-दिनचर्या बनाने की अनुमति दी। पर्ल 5.003 को सुरक्षा प्रस्तावित के रूप में 25 जून 1996 को प्रस्तावित किया गया था।[30]

पर्ल 5 इतिहास की सबसे महत्वपूर्ण घटनाओं में से भाषा के बाहर घटित हुई और यह इसके मॉड्यूल समर्थन का परिणाम था। 26 अक्टूबर 1995 को, व्यापक पर्ल आर्काइव नेटवर्क (सीपीएएन) को पर्ल भाषा और पर्ल मॉड्यूल के लिए सॉफ्टवेयर रिपॉजिटरी के रूप में स्थापित किया गया था, दिसंबर 2022 तक, इसके 43,865 वितरणों में 211,850 से अधिक मॉड्यूल हैं, जो 14,324 से अधिक लेखकों द्वारा लिखे गए हैं, और दुनिया भर में 245 से अधिक स्थानों पर दिखाई देते हैं।[31]

पर्ल 5.004 को 15 मई, 1997 को प्रस्तावित किया गया था, और इसमें अन्य बातों के अतिरिक्त, यूनिवर्सल पैकेज सम्मिलित था, जिसमें पर्ल को आधार वस्तु दी गई थी जिससे सभी वर्ग (कंप्यूटर प्रोग्रामिंग) स्वचालित रूप से प्राप्त हुए थे और मॉड्यूल के संस्करणों की आवश्यकता थी। अन्य महत्वपूर्ण विकास CGI.pm मॉड्यूल का समावेश था,[32] जिसने कॉमन गेटवे इंटरफेस के रूप में पर्ल की लोकप्रियता में योगदान दिया।[33]

पर्ल 5.004 ने माइक्रोसॉफ़्ट विंडोज़, प्लान 9, क्यूएनएक्स, और एमिगाओएस(AmigaOS) के लिए समर्थन जोड़ा।[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-बिट समर्थन, यूनिकोड स्ट्रिंग प्रतिनिधित्व, 2 जीआईबी (GiB) से अधिक फ़ाइलों के लिए समर्थन और कीवर्ड सम्मिलित थे।[36][37] पर्ल 5.6 को विकसित करते समय, सॉफ्टवेयर वर्जनिंग संस्करण योजना को अन्य ओपन सोर्स परियोजनाओं के समान परिवर्तन का निर्णय लिया गया था; 5.005_63 के बाद, उचित संस्करण 5.5.640 बन गया, जिसमें विषम संख्या वाले विकास संस्करण और सम संख्या वाले स्थिर संस्करण की योजना थी।[38]

2000 में, वाल ने समुदाय से पर्ल के नए संस्करण के लिए सलाह का आह्वान किया। इस प्रक्रिया के परिणामस्वरूप 361 आरएफसी(RFC) दस्तावेज़ तैयार हुए जिनका उपयोग पर्ल 6 के विकास में मार्गदर्शन के लिए किया जाना था। पर्ल 6. 2001 में,[39] पर्ल 6 के लिए एपोकैलिप्स पर काम प्रारभ्म हुआ, दस्तावेजों की श्रृंखला जो परिवर्तन अनुरोधों को सारांशित करने और पर्ल की आगामी पीढ़ी के डिजाइन को दर्शाने के लिए था। उन्हें औपचारिक दस्तावेज़ के अतिरिक्त आरएफसी के डाइजेस्ट के रूप में दर्शाया गया था। इस बिंदु पर, पर्ल 6 केवल भाषा के विवरण के रूप में अस्तित्व में था।[citation needed]

पर्ल 5.8 पहली बार 18 जुलाई, 2002 को प्रस्तावित किया गया था, और उस समय से लगभग वार्षिक अद्यतन किया गया था। पर्ल 5.8 ने यूनिकोड समर्थन में सुधार किया, नया इनपुट/आउटपुट कार्यान्वयन जोड़ा,संख्यात्मक सटीकता में सुधार किया, और कई नए मॉड्यूल जोड़े।[40] 2013 तक यह संस्करण अभी भी पर्ल का सबसे लोकप्रिय संस्करण बना हुआ है और इसका उपयोग रे Red Hat 5, Suse 10, Solaris 10, HP-UX 11.31 और AIX 5 द्वारा किया जाता है।

2004 में, सारांश पर काम प्रारम्भ हुआ – दस्तावेज़ जो मूल रूप से अपोकलीप्सेस को सारांशित करते थे, लेकिन जो पर्ल 6 भाषा के लिए विनिर्देश बन गए। फरवरी 2005 में, ऑड्रे टैंग ने हास्केल में लिखे पर्ल 6 इंटरप्रेटर पग्स पर काम करना प्रारम्भ किया।[41] पर्ल 6 को वास्तविकता बनाने की दिशा में यह पहला ठोस प्रयास था। यह प्रयास 2006 में बंद हो गया।[42]

पोनी (PONIE) पर्ल ऑन न्यू इंटरनल इंजन का संक्षिप्त नाम है। पोनी परियोजना 2003 से 2006 तक अस्तित्व में थी और पर्ल 5 और 6 के बीच सेतु बनना था। यह पैरेट पर्ल 6 आभासी मशीन पर चलने के लिए पर्ल 5 दुभाषिया को फिर से लिखने का प्रयास था। लक्ष्य दुनिया भर की हजारों कंपनियों में पर्ल 5 कोड की लाखों लाइनों का भविष्य सुनिश्चित करना था।[43] पोनी परियोजना 2006 में समाप्त हो गई और अब इसे सक्रिय रूप से विकसित नहीं किया जा रहा है। पोनी के भाग के रूप में पर्ल 5 दुभाषिया में किए गए कुछ सुधारों को उस परियोजना में जोड़ दिया गया था।[44]

18 दिसम्बर 2007 को पर्ल 1.0, पर्ल 5.10.0 की 20वीं वर्षगांठ प्रस्तावित की गई। पर्ल 5.10.0 में उल्लेखनीय नई विशेषताएं सम्मिलित हैं, जो पर्ल 6 के निकटतम हैं। इनमें स्विच स्टेटमेंट (जिसे दिया गया "/" कब कहा जाता है), रेगुलर एक्सप्रेशन अपडेट और स्मार्ट मैच ऑपरेटर (~~) सम्मिलित हैं।[45][46]इसी समय के निकटतम, पैरेट आभासी मशीन के साथ मिलकर विकसित, पर्ल 6 के कार्यान्वयन पर विकास आरम्भ हुआ। जिसे राकुडो पर्ल के नाम से जाना जाता है। नवंबर 2009 तक, राकुडो पर्ल की मासिक प्रदर्शन नियमित रूप से होता रहा है और अब यह पर्ल 6 का सबसे पूर्ण कार्यान्वयन है।

पर्ल 5 की विकास प्रक्रिया में बड़ा परिवर्तन पर्ल 5.11 के साथ हुआ; विकास समुदाय स्थिर के वार्षिक शेड्यूल के साथ, मासिक प्रस्तावित चक्र में परिवर्तन किया गया है। उस योजना के अनुसार, तीन महीने में स्थिर