आयरनपायथन: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Infobox software
'''आयरनपायथन''' .नेट रूपरेखा और मोनो (सॉफ्टवेयर) को लक्षित करने वाले पायथन (प्रोग्रामिंग भाषा) का कार्यान्वयन है। [[जिम ह्यूगुनिन]] ने परियोजना बनाई और संस्करण 1.0 तक सक्रिय रूप से योगदान दिया, जो 5 सितंबर, 2006 को प्रचलित किया गया था।<ref>{{cite web
| name = IronPython
| logo = [[File:IronPython 3 logo.svg|64px]]<br />[[File:Ironpython-logo.png|200px]]
| logo alt =
| logo caption =
| author = [[Jim Hugunin]], [[Microsoft]]
| developer = Dino Viehland,<br />[[.NET Foundation]]
| released = {{Release date and age|2006|09|05}}<ref>{{Cite web|url=http://ironpython.codeplex.com/releases/view/423|title=CodePlex Archive|access-date=2014-05-30|archive-date=2017-12-26|archive-url=https://web.archive.org/web/20171226082609/http://ironpython.codeplex.com/releases/view/423|url-status=dead}}</ref>
| discontinued = <!-- Set to yes if software is discontinued, otherwise omit. -->
 
| latest release version = {{wikidata|property|edit|reference|P348}}
| latest release date    = {{start date and age|{{wikidata|qualifier|P348|P577|P548=Q2804309}}}}
| नवीनतम पूर्वावलोकन संस्करण = 3.4.0-बीटा1
| नवीनतम पूर्वावलोकन दिनांक = {{start date and age|2022|04|30}}
| प्रोग्रामिंग लैंग्वेज = सी शार्प (प्रोग्रामिंग लैंग्वेज) | सी#
| ऑपरेटिंग सिस्टम = [[माइक्रोसॉफ़्ट विंडोज़]], [[लिनक्स]], मैकओएस
| प्लेटफॉर्म = .NET फ्रेमवर्क, .NET Core|.NET, [[मोनो (सॉफ्टवेयर)]]
| शैली = [[पायथन (प्रोग्रामिंग भाषा)]] कार्यान्वयन
| लाइसेंस = अपाचे लाइसेंस 2.0
}}
आयरनपायथन .नेट रूपरेखा और मोनो (सॉफ्टवेयर) को लक्षित करने वाले पायथन (प्रोग्रामिंग भाषा) का कार्यान्वयन है। [[जिम ह्यूगुनिन]] ने परियोजना बनाई और संस्करण 1.0 तक सक्रिय रूप से योगदान दिया, जो 5 सितंबर, 2006 को प्रचलित किया गया था।<ref>{{cite web
  | url = http://blogs.msdn.com/hugunin/archive/2006/09/05/741605.aspx
  | url = http://blogs.msdn.com/hugunin/archive/2006/09/05/741605.aspx
  | title = Jim Hugunin's blog: IronPython 1.0 released today!
  | title = Jim Hugunin's blog: IronPython 1.0 released today!
Line 29: Line 9:
  | date = 2008-12-10
  | date = 2008-12-10
  | access-date = 2009-01-25
  | access-date = 2009-01-25
}}</ref> संस्करण 1.0 के बाद इसे 2.7 बीटा 1 रिलीज़ होने तक [[Microsoft|माइक्रोसॉफ्ट]] की एक छोटी टीम द्वारा बनाए रखा गया था। माइक्रोसॉफ्ट ने 2010 के अंत में आयरनपायथन (और उसकी बहन परियोजना [[IronRuby|आयरनरूबी]]) को छोड़ दिया, जिसके बाद ह्यूगुनिन ने गूगल में काम करना छोड़ दिया।<ref>{{cite web
}}</ref> संस्करण 1.0 के बाद इसे 2.7 बीटा 1 रिलीज़ होने तक [[Microsoft|माइक्रोसॉफ्ट]] की छोटी टीम द्वारा बनाए रखा गया था। माइक्रोसॉफ्ट ने 2010 के अंत में आयरनपायथन (और उसकी बहन परियोजना [[IronRuby|आयरनरूबी]]) को छोड़ दिया, जिसके बाद ह्यूगुनिन ने गूगल में काम करना छोड़ दिया।<ref>{{cite web
| url=https://www.theregister.co.uk/2010/10/22/microsoft_kills_dynamic_languages_projects/
| url=https://www.theregister.co.uk/2010/10/22/microsoft_kills_dynamic_languages_projects/
| title=Microsoft cuts loose Iron languages
| title=Microsoft cuts loose Iron languages
Line 37: Line 17:
| publisher=[[The Register]]
| publisher=[[The Register]]
| access-date=2012-04-05
| access-date=2012-04-05
}}</ref> परियोजना वर्तमान में गिटहब में स्वयंसेवकों के समूह द्वारा रखी गई है। यह फ्री और ओपन-सोर्स सॉफ्टवेयर है, और [[विजुअल स्टूडियो]] के लिए पायथन उपकरणों के साथ प्रयुक्त किया जा सकता है, जो माइक्रोसॉफ्ट के विजुअल स्टूडियो आईडीई के लिए एक फ्री और ओपन-सोर्स विस्तार है।<ref>{{cite web|title=IronPython.net|url=http://www.ironpython.net|access-date=2013-07-03}}</ref><ref>{{cite web|title=Python Tools for Visual Studio- Home|url=http://pytools.codeplex.com/|work=Python Tools for Visual Studio|access-date=2013-07-03|archive-date=2018-01-26|archive-url=https://web.archive.org/web/20180126035502/http://pytools.codeplex.com/|url-status=dead}}</ref>
}}</ref> परियोजना वर्तमान में गिटहब में स्वयंसेवकों के समूह द्वारा रखी गई है। यह निःशुल्क और ओपन-सोर्स सॉफ्टवेयर है, और [[विजुअल स्टूडियो]] के लिए पायथन उपकरणों के साथ प्रयुक्त किया जा सकता है, जो माइक्रोसॉफ्ट के विजुअल स्टूडियो आईडीई के लिए निःशुल्क और ओपन-सोर्स विस्तार है।<ref>{{cite web|title=IronPython.net|url=http://www.ironpython.net|access-date=2013-07-03}}</ref><ref>{{cite web|title=Python Tools for Visual Studio- Home|url=http://pytools.codeplex.com/|work=Python Tools for Visual Studio|access-date=2013-07-03|archive-date=2018-01-26|archive-url=https://web.archive.org/web/20180126035502/http://pytools.codeplex.com/|url-status=dead}}</ref>


आयरनपायथन पूरी तरह से सी शार्प (प्रोग्रामिंग भाषा) C# में लिखा गया है, चुकी इसका कुछ कोड पाइथन में लिखे गए [[स्रोत कोड पीढ़ी]] द्वारा स्वचालित रूप से उत्पन्न होता है।
आयरनपायथन पूरी तरह से C शार्प (प्रोग्रामिंग भाषा) C# में लिखा गया है, चूंकि इसका कुछ कोड पायथन में लिखे गए [[स्रोत कोड पीढ़ी]] द्वारा स्वचालित रूप से उत्पन्न होता है।


आयरनपायथन को [[गतिशील भाषा रनटाइम]] (डीएलआर) के शीर्ष पर प्रयुक्त किया गया है, जो सामान्य भाषा इन्फ्रास्ट्रक्चर के शीर्ष पर चलने वाली पुस्तकालय है जो डायनेमिक टाइपिंग और डायनामिक मेथड डिस्पैच प्रदान करती है, अन्य बातों के अतिरिक्त, डायनेमिक भाषाओं के लिए।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/dd233052.aspx|title=Dynamic Language Runtime Overview|publisher=[[Microsoft]]|access-date=2014-04-01}}</ref> डीएलआर .नेट रूपरेखा 4.0 का भाग है और 2009 से संस्करण 2.4 के बाद से मोनो का भी भाग है।<ref>{{Cite web|url=https://github.com/mono/mono/commit/340222ffe8b958cd22d9eb0388488f326845b363|title = 2009-07-02 Marek Safar · mono/Mono@340222f|website = [[GitHub]]}}</ref> डीएलआर का उपयोग पुराने सीएलआई कार्यान्वयनों पर पुस्तकालय के रूप में भी किया जा सकता है।
आयरनपायथन को [[गतिशील भाषा रनटाइम]] (डीएलआर) के शीर्ष पर प्रयुक्त किया गया है, जो सामान्य भाषा इन्फ्रास्ट्रक्चर के शीर्ष पर चलने वाली पुस्तकालय है जो डायनेमिक टाइपिंग और डायनामिक विधि डिस्पैच, अन्य बातों के अतिरिक्त, डायनेमिक भाषाओं के लिए प्रदान करती है।<ref>{{cite web|url=http://msdn.microsoft.com/en-us/library/dd233052.aspx|title=Dynamic Language Runtime Overview|publisher=[[Microsoft]]|access-date=2014-04-01}}</ref> डीएलआर .नेट रूपरेखा 4.0 का भाग है और 2009 से संस्करण 2.4 के बाद से मोनो का भी भाग है।<ref>{{Cite web|url=https://github.com/mono/mono/commit/340222ffe8b958cd22d9eb0388488f326845b363|title = 2009-07-02 Marek Safar · mono/Mono@340222f|website = [[GitHub]]}}</ref> डीएलआर का उपयोग पुराने सीएलआई कार्यान्वयनों पर पुस्तकालय के रूप में भी किया जा सकता है।


== स्थिति और रोडमैप ==
== स्थिति और रोडमैप ==
* रिलीज़ 2.0, 10 दिसंबर, 2008 को प्रचलित किया गया, और 23 अक्टूबर, 2009 को 2.0.3 के रूप में अपडेट किया गया, सी पायथन 2.5 को लक्षित करता है।<ref>{{cite web
* रिलीज़ 2.0, 10 दिसंबर, 2008 को प्रचलित किया गया, और 23 अक्टूबर, 2009 को 2.0.3 के रूप में अपडेट किया गया, C पायथन 2.5 को लक्षित करता है।<ref>{{cite web
| url=http://ironpython.codeplex.com/releases/view/30416
| url=http://ironpython.codeplex.com/releases/view/30416
| title=2.0.3
| title=2.0.3
Line 53: Line 33:
| url-status=dead
| url-status=dead
}}</ref> आयरनपायथन 2.0.3 केवल .नेट रूपरेखा 3.5 तक संगत है।
}}</ref> आयरनपायथन 2.0.3 केवल .नेट रूपरेखा 3.5 तक संगत है।
* रिलीज़ 2.6, 11 दिसंबर, 2009 को रिलीज़ हुई और 12 अप्रैल, 2010 को अपडेट की गई, सी पायथन 2.6 को लक्षित करती है।<ref>{{cite web
* रिलीज़ 2.6, 11 दिसंबर, 2009 को रिलीज़ हुई और 12 अप्रैल, 2010 को अपडेट की गई, C पायथन 2.6 को लक्षित करती है।<ref>{{cite web
| url=http://ironpython.codeplex.com/releases/view/36280
| url=http://ironpython.codeplex.com/releases/view/36280
| title=2.6
| title=2.6
Line 71: Line 51:
| url-status=dead
| url-status=dead
}}</ref>
}}</ref>
* रिलीज 2.7.1 21 अक्टूबर, 2011 को प्रचलित किया गया था और यह सी पायथन 2.7 को लक्षित करता है।<ref>{{cite web
* रिलीज 2.7.1 21 अक्टूबर, 2011 को प्रचलित किया गया था और यह C पायथन 2.7 को लक्षित करता है।<ref>{{cite web
| url=http://ironpython.codeplex.com/releases/view/62475
| url=http://ironpython.codeplex.com/releases/view/62475
| title=2.7.1
| title=2.7.1
Line 117: Line 97:
| publisher=github.com
| publisher=github.com
| access-date=2018-01-05}}</ref>
| access-date=2018-01-05}}</ref>
* रिलीज 2.7.8 16 फरवरी, 2018 को प्रचलित किया गया था और इसमें बग फिक्स, पुनर्गठित कोड और एक अद्यतन परीक्षण आधारभूत संरचना सम्मिलित है (मोनो (सॉफ्टवेयर) के अनुसार लिनक्स पर महत्वपूर्ण परीक्षण सहित)। यह .नेट कोर को समर्थन करने वाली पहली रिलीज़ भी है।<ref name=latestbut1Release>{{cite web
* रिलीज 2.7.8 16 फरवरी, 2018 को प्रचलित किया गया था और इसमें बग फिक्स, पुनर्गठित कोड और अद्यतन परीक्षण आधारभूत संरचना सम्मिलित है (मोनो (सॉफ्टवेयर) के अनुसार लिनक्स पर महत्वपूर्ण परीक्षण सहित)। यह .नेट कोर को समर्थन करने वाली पहली रिलीज़ भी है।<ref name=latestbut1Release>{{cite web
| url=https://github.com/IronLanguages/ironpython2/tree/ipy-2.7.8
| url=https://github.com/IronLanguages/ironpython2/tree/ipy-2.7.8
| title=2.7.8
| title=2.7.8
Line 130: Line 110:
* रिलीज़ 2.7.11 को 17 नवंबर, 2020 को रिलीज़ किया गया था और .नेट 5 पर चलते समय आने वाली समस्याओं का समाधान करता है।
* रिलीज़ 2.7.11 को 17 नवंबर, 2020 को रिलीज़ किया गया था और .नेट 5 पर चलते समय आने वाली समस्याओं का समाधान करता है।
* रिलीज़ 2.7.12 को 21 जनवरी, 2022 को रिलीज़ किया गया था और यह .नेट 6 की समस्याओं को हल करती है और .नेट कोर 2.1 के लिए समर्थन हटाती है<ref>{{Cite web |title=Releases · IronLanguages/ironpython2 |url=https://github.com/IronLanguages/ironpython2/releases |access-date=2022-08-08 |website=GitHub |language=en}}</ref>
* रिलीज़ 2.7.12 को 21 जनवरी, 2022 को रिलीज़ किया गया था और यह .नेट 6 की समस्याओं को हल करती है और .नेट कोर 2.1 के लिए समर्थन हटाती है<ref>{{Cite web |title=Releases · IronLanguages/ironpython2 |url=https://github.com/IronLanguages/ironpython2/releases |access-date=2022-08-08 |website=GitHub |language=en}}</ref>
 
=== C पायथन के साथ अंतर ===
 
पायथन संदर्भ कार्यान्वयन C पायथन और आयरनपायथन के बीच कुछ अंतर हैं।<ref name="compcpython">{{cite web
 
=== सी पायथन के साथ अंतर ===
पायथन संदर्भ कार्यान्वयन सी पायथन और आयरनपायथन के बीच कुछ अंतर हैं।<ref name="compcpython">{{cite web
| url=http://www.codeplex.com/IronPython/Wiki/View.aspx?title=Differences&referringTitle=Home
| url=http://www.codeplex.com/IronPython/Wiki/View.aspx?title=Differences&referringTitle=Home
| title=Differences between IronPython 1.0 and CPython 2.4.3
| title=Differences between IronPython 1.0 and CPython 2.4.3
|publisher=[[Microsoft]]
|publisher=[[Microsoft]]
| date=2007-12-18
| date=2007-12-18
| access-date=2008-02-09}}</ref> आयरनपायथन के शीर्ष पर बनी कुछ परियोजनाओं को सी पायथन के अंतर्गत काम नहीं करने के लिए जाना जाता है।<ref>{{cite web
| access-date=2008-02-09}}</ref> आयरनपायथन के शीर्ष पर बनी कुछ परियोजनाओं को C पायथन के अंतर्गत काम नहीं करने के लिए जाना जाता है।<ref>{{cite web
| url=http://lists.ironpython.com/pipermail/users-ironpython.com/2008-January/006297.html
| url=http://lists.ironpython.com/pipermail/users-ironpython.com/2008-January/006297.html
| title=New Project: Implementing .NET Libraries in Pure Python
| title=New Project: Implementing .NET Libraries in Pure Python
Line 148: Line 125:
| archive-date=2008-08-30
| archive-date=2008-08-30
| url-status=dead
| url-status=dead
}}</ref> इसके विपरीत, सी पायथन अनुप्रयोग जो C में प्रयुक्त की गई भाषा के विस्तार पर निर्भर करते हैं, वे आयरनपायथन के साथ संगत नहीं हैं ।
}}</ref> इसके विपरीत, C पायथन अनुप्रयोग जो C में प्रयुक्त की गई भाषा के विस्तार पर निर्भर करते हैं, वे आयरनपायथन के साथ संगत नहीं हैं ।


<ref>{{cite web
<ref>{{cite web
Line 156: Line 133:
| date=15 October 2005
| date=15 October 2005
| access-date=2008-07-09}}</ref> जब तक कि उन्हें .नेट इंटरॉप में प्रयुक्त नहीं किया जाता। उदाहरण के लिए, [[NumPy|नमपैय]] को माइक्रोसॉफ्ट द्वारा 2011 में लपेटा गया था, जिससे उस पर निर्भर कोड और पुस्तकालय को सीधे .नेट रूपरेखा से चलाया जा सके।<ref>{{cite web | url=https://www.infoq.com/news/2011/07/NumPy-NET | title=NumPy and SciPy for .NET | access-date=2019-04-05}}</ref>
| access-date=2008-07-09}}</ref> जब तक कि उन्हें .नेट इंटरॉप में प्रयुक्त नहीं किया जाता। उदाहरण के लिए, [[NumPy|नमपैय]] को माइक्रोसॉफ्ट द्वारा 2011 में लपेटा गया था, जिससे उस पर निर्भर कोड और पुस्तकालय को सीधे .नेट रूपरेखा से चलाया जा सके।<ref>{{cite web | url=https://www.infoq.com/news/2011/07/NumPy-NET | title=NumPy and SciPy for .NET | access-date=2019-04-05}}</ref>
 
== सिल्वरलाइट ==
 
 
== [[सिल्वरलाइट]] ==
आयरनपायथन सिल्वरलाइट पर समर्थित है (जिसे माइक्रोसॉफ्ट द्वारा बहिष्कृत किया गया है और पहले से ही अधिकांश वेब ब्राउज़रों में समर्थन खो चुका है<ref>{{Cite web|url=https://www.microsoft.com/getsilverlight/locale/en-us/html/installation-win-SL5.html|title=Silverlight 5 System Requirements|website=www.microsoft.com|access-date=2019-11-16}}</ref>)। इसे [[जावास्क्रिप्ट]] इंजन की तरह ही ब्राउजर में स्क्रिप्टिंग इंजन के रूप में प्रयोग किया जा सकता है।<ref>{{cite web|url=http://ironpython.net/browser/|title=Write browser applications in Python |work=IronPython.net |archive-url=https://web.archive.org/web/20130317012431/http://ironpython.net/browser/ |archive-date=2013-03-17}}</ref> आयरनपायथन <code><script></code>-टैग को साधारण क्लाइंट-साइड जावास्क्रिप्ट स्क्रिप्ट्स की तरह पास किया जाता है। तब एम्बेडेड [[XAML|एक्स एएमएल]] मार्कअप को संशोधित करना भी संभव है।
आयरनपायथन सिल्वरलाइट पर समर्थित है (जिसे माइक्रोसॉफ्ट द्वारा बहिष्कृत किया गया है और पहले से ही अधिकांश वेब ब्राउज़रों में समर्थन खो चुका है<ref>{{Cite web|url=https://www.microsoft.com/getsilverlight/locale/en-us/html/installation-win-SL5.html|title=Silverlight 5 System Requirements|website=www.microsoft.com|access-date=2019-11-16}}</ref>)। इसे [[जावास्क्रिप्ट]] इंजन की तरह ही ब्राउजर में स्क्रिप्टिंग इंजन के रूप में प्रयोग किया जा सकता है।<ref>{{cite web|url=http://ironpython.net/browser/|title=Write browser applications in Python |work=IronPython.net |archive-url=https://web.archive.org/web/20130317012431/http://ironpython.net/browser/ |archive-date=2013-03-17}}</ref> आयरनपायथन <code><script></code>-टैग को साधारण क्लाइंट-साइड जावास्क्रिप्ट स्क्रिप्ट्स की तरह पास किया जाता है। तब एम्बेडेड [[XAML|एक्स एएमएल]] मार्कअप को संशोधित करना भी संभव है।


Line 170: Line 144:
     window.Alert("Hello from Python")
     window.Alert("Hello from Python")
</script>
</script>
</syntaxhighlight>'''// DLR initialization script.'''
</syntaxhighlight>आयरनरूबी के लिए भी यही काम करता है।
 
'''<script src="http://gestalt.ironpython.net/dlr-latest.js" type="text/javascript"></script>'''
 
'''<br />'''
 
'''<br />'''
 
'''// Client-side script passed to IronPython and Silverlight.'''
 
'''<script type="text/python">'''
 
'''window.Alert("Hello from Python") </script>'''
 
 
 
 
 
 
आयरनरूबी के लिए भी यही काम करता है।


== लाइसेंस ==
== लाइसेंस ==
Line 213: Line 168:


== इंटरफ़ेस एक्स्टेंसिबिलिटी ==
== इंटरफ़ेस एक्स्टेंसिबिलिटी ==
आयरनपायथन के प्रमुख लाभों में से एक .नेट भाषा में लिखे गए अनुप्रयोग रूपरेखा के लिए एक एक्स्टेंसिबिलिटी परत के रूप में इसका कार्य है। आयरनपायथन दुभाषिया को उपस्थित .नेट अनुप्रयोग रूपरेखा में एकीकृत करना अपेक्षाकृत सरल है। एक बार स्थापित हो जाने के बाद, डाउनस्ट्रीम डेवलपर आयरनपायथन में लिखी गई स्क्रिप्ट का उपयोग कर सकते हैं जो रूपरेखा में .नेट ऑब्जेक्ट्स के साथ इंटरैक्ट करती हैं, जिससे रूपरेखा के किसी भी कोड बेस को बदले बिना रूपरेखा के इंटरफेस में कार्यक्षमता का विस्तार होता है।<ref name=dot-net-example>{{cite web
आयरनपायथन के प्रमुख लाभों में से एक .नेट भाषा में लिखे गए अनुप्रयोग रूपरेखा के लिए एक्स्टेंसिबिलिटी परत के रूप में इसका कार्य है। आयरनपायथन दुभाषिया को उपस्थित .नेट अनुप्रयोग रूपरेखा में एकीकृत करना अपेक्षाकृत सरल है। एक बार स्थापित हो जाने के बाद, डाउनस्ट्रीम डेवलपर आयरनपायथन में लिखी गई स्क्रिप्ट का उपयोग कर सकते हैं जो रूपरेखा में .नेट ऑब्जेक्ट्स के साथ इंटरैक्ट करती हैं, जिससे रूपरेखा के किसी भी कोड बेस को बदले बिना रूपरेखा के इंटरफेस में कार्यक्षमता का विस्तार होता है।<ref name=dot-net-example>{{cite web
  | url = http://www.resolversystems.com/documentation/index.php/Dot_Net_Objects_in_the_Grid
  | url = http://www.resolversystems.com/documentation/index.php/Dot_Net_Objects_in_the_Grid
  | title = Using .NET objects from IronPython in Resolver One
  | title = Using .NET objects from IronPython in Resolver One
Line 222: Line 177:
  }}</ref>
  }}</ref>


आयरनपायथन [[प्रतिबिंब (कंप्यूटर विज्ञान)|प्रतिबिंब]] का व्यापक उपयोग करता है। जब किसी .नेट ऑब्जेक्ट के संदर्भ में पास किया जाता है, तो यह स्वचालित रूप से उस ऑब्जेक्ट के लिए उपलब्ध प्रकारों और विधियों को आयात करेगा। यह एक आयरनपायथन स्क्रिप्ट के अन्दर .नेट ऑब्जेक्ट्स के साथ काम करते समय अत्यधिक सहज अनुभव का परिणाम देता है।
आयरनपायथन [[प्रतिबिंब (कंप्यूटर विज्ञान)|प्रतिबिंब]] का व्यापक उपयोग करता है। जब किसी .नेट ऑब्जेक्ट के संदर्भ में पास किया जाता है, तो यह स्वचालित रूप से उस ऑब्जेक्ट के लिए उपलब्ध प्रकारों और विधियों को आयात करेगा। यह आयरनपायथन स्क्रिप्ट के अन्दर .नेट ऑब्जेक्ट्स के साथ काम करते समय अत्यधिक सहज अनुभव का परिणाम देता है।


== उदाहरण ==
== उदाहरण ==
निम्नलिखित आयरनपायथन स्क्रिप्ट .नेट रूपरेखा ऑब्जेक्ट्स में हेरफेर करती है। यह स्क्रिप्ट एक तृतीय-पक्ष क्लाइंट-साइड अनुप्रयोग डेवलपर द्वारा आपूर्ति की जा सकती है और एक इंटरफ़ेस के माध्यम से सर्वर-साइड रूपरेखा में पास की जा सकती है। ध्यान दें कि क्लाइंट अनुप्रयोग द्वारा आवश्यक विश्लेषणों का समर्थन करने के लिए न तो इंटरफ़ेस और न ही सर्वर-साइड कोड को संशोधित किया गया है।<syntaxhighlight>
निम्नलिखित आयरनपायथन स्क्रिप्ट .नेट रूपरेखा ऑब्जेक्ट्स में हेरफेर करती है। यह स्क्रिप्ट तृतीय-पक्ष क्लाइंट-साइड अनुप्रयोग डेवलपर द्वारा आपूर्ति की जा सकती है और इंटरफ़ेस के माध्यम से सर्वर-साइड रूपरेखा में पास की जा सकती है। ध्यान दें कि क्लाइंट अनुप्रयोग द्वारा आवश्यक विश्लेषणों का समर्थन करने के लिए न तो इंटरफ़ेस और न ही सर्वर-साइड कोड को संशोधित किया गया है।<syntaxhighlight>
from BookService import BookDictionary
from BookService import BookDictionary
   
   
Line 232: Line 187:
</syntaxhighlight>
</syntaxhighlight>
                                
                                
 
इस स्थिति में, मान लें कि .नेट रूपरेखा बुक सेवा नामक मॉड्यूल में वर्ग, बुक डिक्शनरी को प्रयुक्त करता है, और इंटरफ़ेस प्रकाशित करता है जिसमें आयरनपायथन स्क्रिप्ट को भेजा और निष्पादित किया जा सकता है।
'''from BookService import BookDictionary
booksWrittenByBookerPrizeWinners = [book.Title for book in BookDictionary.GetAllBooks()
                                    if "Booker Prize" in book.Author.MajorAwards]'''
 
 
 
 
 
इस स्थिति में, मान लें कि .नेट रूपरेखा बुक सेवा नामक मॉड्यूल में एक वर्ग, बुक डिक्शनरी को प्रयुक्त करता है, और एक इंटरफ़ेस प्रकाशित करता है जिसमें आयरनपायथन स्क्रिप्ट को भेजा और निष्पादित किया जा सकता है।


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


निम्न स्क्रिप्ट एक सरल हैलो वर्ल्ड संदेश बनाने के लिए .नेट रूपरेखा का उपयोग करती है।<syntaxhighlight>
निम्न स्क्रिप्ट सरल हैलो वर्ल्ड संदेश बनाने के लिए .नेट रूपरेखा का उपयोग करती है।<syntaxhighlight>
import clr
import clr
clr.AddReference("System.Windows.Forms")
clr.AddReference("System.Windows.Forms")
Line 254: Line 200:
MessageBox.Show("Hello World")
MessageBox.Show("Hello World")
Performance
Performance
</syntaxhighlight>'''import clr'''
</syntaxhighlight>
 
'''clr.AddReference("System.Windows.Forms")'''
 
'''<br />'''
 
'''<br />'''
 
'''from System.Windows.Forms import MessageBox'''
 
'''MessageBox.Show("Hello World")'''
 
== प्रदर्शन ==
== प्रदर्शन ==
सी पायथन की तुलना में आयरनपायथन की प्रदर्शन विशेषताएँ, पाइथन का संदर्भ कार्यान्वयन, उपयोग किए गए स्पष्ट बेंचमार्क पर निर्भर करता है। [[थ्रिस्टोन]] स्क्रिप्ट के साथ लिए गए अधिकांश बेंचमार्क पर आयरनपायथन [[सीपीथॉन|सीपाइथन]] से खराब प्रदर्शन करता है लेकिन अन्य बेंचमार्क पर अच्छा है।<ref>{{cite web
C पायथन की तुलना में आयरनपायथन की प्रदर्शन विशेषताएँ, पायथन का संदर्भ कार्यान्वयन, उपयोग किए गए स्पष्ट बेंचमार्क पर निर्भर करता है। [[थ्रिस्टोन]] स्क्रिप्ट के साथ लिए गए अधिकांश बेंचमार्क पर आयरनपायथन [[सीपीथॉन|सीपायथन]] से खराब प्रदर्शन करता है लेकिन अन्य बेंचमार्क पर अच्छा है।<ref>{{cite web
| url=http://ironpython.codeplex.com/Wiki/View.aspx?title=IP26RC1VsCPy26Perf&referringTitle=Home
| url=http://ironpython.codeplex.com/Wiki/View.aspx?title=IP26RC1VsCPy26Perf&referringTitle=Home
| title=IronPython Performance Report
| title=IronPython Performance Report
Line 273: Line 208:
}}{{Dead link|date=October 2022 |bot=InternetArchiveBot |fix-attempted=yes }}</ref>
}}{{Dead link|date=October 2022 |bot=InternetArchiveBot |fix-attempted=yes }}</ref>


आयरनपायथन पाइथन प्रोग्राम्स में अच्छा प्रदर्शन कर सकता है जो थ्रेड्स या मल्टीपल कोर का उपयोग करते हैं, क्योंकि इसमें [[समय-समय पर संकलन]] कंपाइलर है, और इसलिए भी कि इसमें [[ग्लोबल इंटरप्रेटर लॉक]] नहीं है।<ref>{{cite web
आयरनपायथन पायथन प्रोग्राम्स में अच्छा प्रदर्शन कर सकता है जो थ्रेड्स या मल्टीपल कोर का उपयोग करते हैं, क्योंकि इसमें [[समय-समय पर संकलन]] कंपाइलर है, और इसलिए भी कि इसमें [[ग्लोबल इंटरप्रेटर लॉक]] नहीं है।<ref>{{cite web
| url=https://wiki.python.org/moin/IronPython
| url=https://wiki.python.org/moin/IronPython
| title=IronPython at python.org
| title=IronPython at python.org
Line 279: Line 214:
| quote=''IronPython has no GIL and multi-threaded code can use multi core processors.''
| quote=''IronPython has no GIL and multi-threaded code can use multi core processors.''
| access-date=2011-04-04}}</ref><ref>{{Cite web |url=http://jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/ |title=Python's Hardest Problem, Revisited |access-date=2015-07-15 |archive-url=https://web.archive.org/web/20151031074238/http://www.jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/ |archive-date=2015-10-31 |url-status=dead }}</ref>
| access-date=2011-04-04}}</ref><ref>{{Cite web |url=http://jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/ |title=Python's Hardest Problem, Revisited |access-date=2015-07-15 |archive-url=https://web.archive.org/web/20151031074238/http://www.jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/ |archive-date=2015-10-31 |url-status=dead }}</ref>
== यह भी देखें ==
== यह भी देखें ==
{{Portal|Free and open-source software|Computer programming}}
{{Portal|Free and open-source software|Computer programming}}
* [[बू (प्रोग्रामिंग भाषा)]] - .नेट रूपरेखा के लिए एक भाषा और पायथन-प्रेरित वाक्य-विन्यास के साथ मोनो और सी शार्प (प्रोग्रामिंग भाषा), सी # और [[रूबी (प्रोग्रामिंग भाषा)]] से उधार ली गई सुविधाएँ
* [[बू (प्रोग्रामिंग भाषा)]] - .नेट रूपरेखा के लिए भाषा और पायथन-प्रेरित वाक्य-विन्यास के साथ मोनो और C शार्प (प्रोग्रामिंग भाषा), C # और [[रूबी (प्रोग्रामिंग भाषा)]] से ऋण ली गई सुविधाएँ
* [[कोबरा (प्रोग्रामिंग भाषा)]]
* [[कोबरा (प्रोग्रामिंग भाषा)]]
*आयरन योजना
*आयरन योजना
* ज्योथन - [[जावा वर्चुअल मशीन]] के लिए पायथन (प्रोग्रामिंग भाषा) का कार्यान्वयन
* ज्योथन - [[जावा वर्चुअल मशीन]] के लिए पायथन (प्रोग्रामिंग भाषा) का कार्यान्वयन
* [[साइथन]]
* [[साइथन]]
* [[PyPy|प्य्प्य]] - पायथन प्रोग्रामिंग भाषा के लिए एक स्व-होस्टिंग दुभाषिया
* [[PyPy|प्य्प्य]] - पायथन प्रोग्रामिंग भाषा के लिए स्व-होस्टिंग दुभाषिया
* [[ताओ फ्रेमवर्क|ताओ रूपरेखा]]
* [[ताओ फ्रेमवर्क|ताओ रूपरेखा]]
* [[Unladen Swallow|अनलादेन निगलना]] – सी पायथन की एक (अब निष्क्रिय) शाखा जिसका उद्देश्य [[LLVM|एलएलवीएम]]-आधारित जस्ट-इन-टाइम कंपाइलर का उपयोग करके उत्तम प्रदर्शन प्रदान करना है
* [[Unladen Swallow|अनलादेन निगलना]] – C पायथन की (अब निष्क्रिय) शाखा जिसका उद्देश्य [[LLVM|एलएलवीएम]]-आधारित जस्ट-इन-टाइम कंपाइलर का उपयोग करके उत्तम प्रदर्शन प्रदान करना है




== संदर्भ ==
== संदर्भ ==
{{Reflist}}
{{Reflist}}


== बाहरी संबंध ==
== बाहरी संबंध ==
* {{Official website}}
* [https://ironpython.net/ Official website]
 
{{Python (programming language)}}
{{Common Language Infrastructure}}
{{Microsoft FOSS}}
{{Microsoft development tools}}
[[Category: .NET प्रोग्रामिंग लैंग्वेज]] [[Category: सी शार्प में मुफ्त सॉफ्टवेयर प्रोग्राम किया गया]] [[Category: माइक्रोसॉफ्ट मुफ्त सॉफ्टवेयर]] [[Category: माइक्रोसॉफ्ट प्रोग्रामिंग लैंग्वेज]] [[Category: पायथन (प्रोग्रामिंग भाषा) कार्यान्वयन]] [[Category: पायथन (प्रोग्रामिंग भाषा) पुस्तकालय]] [[Category: सॉफ्टवेयर अपाचे लाइसेंस का उपयोग कर रहा है]] [[Category: 2006 सॉफ्टवेयर]]  
 
 


[[Category: Machine Translated Page]]
[[Category:.NET प्रोग्रामिंग लैंग्वेज]]
[[Category:2006 सॉफ्टवेयर]]
[[Category:All articles with dead external links]]
[[Category:Articles with dead external links from October 2022]]
[[Category:Articles with invalid date parameter in template]]
[[Category:Articles with permanently dead external links]]
[[Category:CS1 English-language sources (en)]]
[[Category:Collapse templates]]
[[Category:Created On 18/02/2023]]
[[Category:Created On 18/02/2023]]
[[Category:Machine Translated Page]]
[[Category:Navigational boxes| ]]
[[Category:Navigational boxes without horizontal lists]]
[[Category:Pages using Infobox software with unknown parameters|ऑपरेटिंग सिस्टमआयरनपायथन]]
[[Category:Pages with empty portal template]]
[[Category:Pages with script errors]]
[[Category:Pages with syntax highlighting errors]]
[[Category:Portal templates with redlinked portals]]
[[Category:Sidebars with styles needing conversion]]
[[Category:Template documentation pages|Documentation/doc]]
[[Category:Templates Vigyan Ready]]
[[Category:Templates generating microformats]]
[[Category:Templates that are not mobile friendly]]
[[Category:Templates using TemplateData]]
[[Category:Wikipedia metatemplates]]

Latest revision as of 16:40, 2 November 2023

आयरनपायथन .नेट रूपरेखा और मोनो (सॉफ्टवेयर) को लक्षित करने वाले पायथन (प्रोग्रामिंग भाषा) का कार्यान्वयन है। जिम ह्यूगुनिन ने परियोजना बनाई और संस्करण 1.0 तक सक्रिय रूप से योगदान दिया, जो 5 सितंबर, 2006 को प्रचलित किया गया था।[1] आयरनपायथन 2.0 को 10 दिसंबर, 2008 को प्रचलित किया गया था।[2] संस्करण 1.0 के बाद इसे 2.7 बीटा 1 रिलीज़ होने तक माइक्रोसॉफ्ट की छोटी टीम द्वारा बनाए रखा गया था। माइक्रोसॉफ्ट ने 2010 के अंत में आयरनपायथन (और उसकी बहन परियोजना आयरनरूबी) को छोड़ दिया, जिसके बाद ह्यूगुनिन ने गूगल में काम करना छोड़ दिया।[3] परियोजना वर्तमान में गिटहब में स्वयंसेवकों के समूह द्वारा रखी गई है। यह निःशुल्क और ओपन-सोर्स सॉफ्टवेयर है, और विजुअल स्टूडियो के लिए पायथन उपकरणों के साथ प्रयुक्त किया जा सकता है, जो माइक्रोसॉफ्ट के विजुअल स्टूडियो आईडीई के लिए निःशुल्क और ओपन-सोर्स विस्तार है।[4][5]

आयरनपायथन पूरी तरह से C शार्प (प्रोग्रामिंग भाषा) C# में लिखा गया है, चूंकि इसका कुछ कोड पायथन में लिखे गए स्रोत कोड पीढ़ी द्वारा स्वचालित रूप से उत्पन्न होता है।

आयरनपायथन को गतिशील भाषा रनटाइम (डीएलआर) के शीर्ष पर प्रयुक्त किया गया है, जो सामान्य भाषा इन्फ्रास्ट्रक्चर के शीर्ष पर चलने वाली पुस्तकालय है जो डायनेमिक टाइपिंग और डायनामिक विधि डिस्पैच, अन्य बातों के अतिरिक्त, डायनेमिक भाषाओं के लिए प्रदान करती है।[6] डीएलआर .नेट रूपरेखा 4.0 का भाग है और 2009 से संस्करण 2.4 के बाद से मोनो का भी भाग है।[7] डीएलआर का उपयोग पुराने सीएलआई कार्यान्वयनों पर पुस्तकालय के रूप में भी किया जा सकता है।

स्थिति और रोडमैप

  • रिलीज़ 2.0, 10 दिसंबर, 2008 को प्रचलित किया गया, और 23 अक्टूबर, 2009 को 2.0.3 के रूप में अपडेट किया गया, C पायथन 2.5 को लक्षित करता है।[8] आयरनपायथन 2.0.3 केवल .नेट रूपरेखा 3.5 तक संगत है।
  • रिलीज़ 2.6, 11 दिसंबर, 2009 को रिलीज़ हुई और 12 अप्रैल, 2010 को अपडेट की गई, C पायथन 2.6 को लक्षित करती है।[9] आयरनपायथन 2.6.1 संस्करण केवल .नेट रूपरेखा 4.0 के साथ बाइनरी संगत है। आयरनपायथन 2.6.1 को .नेट रूपरेखा 3.5 पर चलने के लिए स्रोतों से संकलित किया जाना चाहिए। आयरनपायथन 2.6.2, 21 अक्टूबर, 2010 को प्रचलित किया गया, .नेट रूपरेखा 4.0 और .नेट रूपरेखा 3.5 दोनों के साथ बाइनरी संगत है।
  • रिलीज 2.7 12 मार्च, 2011 को प्रचलित किया गया था और यह सीपीथॉन 2.7 को लक्षित करता है।[10]
  • रिलीज 2.7.1 21 अक्टूबर, 2011 को प्रचलित किया गया था और यह C पायथन 2.7 को लक्षित करता है।[11]
  • रिलीज 2.7.2.1 13 मार्च 2012 को प्रचलित किया गया था। यह ज़िप फ़ाइल स्वरूप पुस्तकालय, एसक्यू लाइट, और संकलित निष्पादनयोग्य के लिए समर्थन को सक्षम बनाता है।[12]
  • रिलीज़ 2.7.4 को 7 सितंबर, 2013 को रिलीज़ किया गया था।[13]
  • रिलीज़ 2.7.5 को 6 दिसंबर 2014 को रिलीज़ किया गया था और इसमें अधिकतर बग फिक्स सम्मिलित हैं।[14]
  • रिलीज़ 2.7.6 को 21 अगस्त 2016 को रिलीज़ किया गया था और इसमें केवल बग फिक्स सम्मिलित हैं।[15]
  • रिलीज़ 2.7.7 को 7 दिसंबर, 2016 को रिलीज़ किया गया था और इसमें केवल बग फिक्स सम्मिलित हैं।[16]
  • रिलीज 2.7.8 16 फरवरी, 2018 को प्रचलित किया गया था और इसमें बग फिक्स, पुनर्गठित कोड और अद्यतन परीक्षण आधारभूत संरचना सम्मिलित है (मोनो (सॉफ्टवेयर) के अनुसार लिनक्स पर महत्वपूर्ण परीक्षण सहित)। यह .नेट कोर को समर्थन करने वाली पहली रिलीज़ भी है।[17]
  • रिलीज़ 2.7.9 को 9 अक्टूबर, 2018 को रिलीज़ किया गया था और इसमें बग फिक्स, पुनर्गठित कोड सम्मिलित हैं। यह आयरनपायथन 3 से पहले अंतिम रिलीज होने का आशय है।[18]
  • रिलीज़ 2.7.10 को 27 अप्रैल, 2020 को रिलीज़ किया गया था और इसमें .नेट कोर 3.1 समर्थन में जोड़ा गया है।[19]
  • रिलीज़ 2.7.11 को 17 नवंबर, 2020 को रिलीज़ किया गया था और .नेट 5 पर चलते समय आने वाली समस्याओं का समाधान करता है।
  • रिलीज़ 2.7.12 को 21 जनवरी, 2022 को रिलीज़ किया गया था और यह .नेट 6 की समस्याओं को हल करती है और .नेट कोर 2.1 के लिए समर्थन हटाती है[20]

C पायथन के साथ अंतर

पायथन संदर्भ कार्यान्वयन C पायथन और आयरनपायथन के बीच कुछ अंतर हैं।[21] आयरनपायथन के शीर्ष पर बनी कुछ परियोजनाओं को C पायथन के अंतर्गत काम नहीं करने के लिए जाना जाता है।[22] इसके विपरीत, C पायथन अनुप्रयोग जो C में प्रयुक्त की गई भाषा के विस्तार पर निर्भर करते हैं, वे आयरनपायथन के साथ संगत नहीं हैं ।

[23] जब तक कि उन्हें .नेट इंटरॉप में प्रयुक्त नहीं किया जाता। उदाहरण के लिए, नमपैय को माइक्रोसॉफ्ट द्वारा 2011 में लपेटा गया था, जिससे उस पर निर्भर कोड और पुस्तकालय को सीधे .नेट रूपरेखा से चलाया जा सके।[24]

सिल्वरलाइट

आयरनपायथन सिल्वरलाइट पर समर्थित है (जिसे माइक्रोसॉफ्ट द्वारा बहिष्कृत किया गया है और पहले से ही अधिकांश वेब ब्राउज़रों में समर्थन खो चुका है[25])। इसे जावास्क्रिप्ट इंजन की तरह ही ब्राउजर में स्क्रिप्टिंग इंजन के रूप में प्रयोग किया जा सकता है।[26] आयरनपायथन <script>-टैग को साधारण क्लाइंट-साइड जावास्क्रिप्ट स्क्रिप्ट्स की तरह पास किया जाता है। तब एम्बेडेड एक्स एएमएल मार्कअप को संशोधित करना भी संभव है।

इसके पीछे की तकनीक को गेस्टाल्ट कहा जाता है।

// DLR initialization script.
<script src="http://gestalt.ironpython.net/dlr-latest.js" type="text/javascript"></script>

// Client-side script passed to IronPython and Silverlight.
<script type="text/python">
    window.Alert("Hello from Python")
</script>

आयरनरूबी के लिए भी यही काम करता है।

लाइसेंस

संस्करण 0.6 तक, आयरनपायथन को सामान्य सार्वजनिक लाइसेंस की नियमों के अनुसार प्रचलित किया गया था।[27] अगस्त 2004 में प्रोजेक्ट लीड की भर्ती के बाद, आयरनपायथन को माइक्रोसॉफ्ट की साझा स्रोत पहल के भाग के रूप में उपलब्ध कराया गया था। यह लाइसेंस ओपन सोर्स पहल-अनुमोदित नहीं है, लेकिन लेखकों का प्रमाण है कि यह ओपन-सोर्स की परिभाषा को पूरा करता है।[28] 2.0 अल्फ़ा रिलीज़ के साथ, लाइसेंस को माइक्रोसॉफ्ट सार्वजनिक लाइसेंस में बदल दिया गया था,[29] जिसे ओएसआई ने स्वीकृति दे दी है। नवीनतम संस्करण अपाचे लाइसेंस 2.0 की नियमों के अनुसार प्रचलित किए गए हैं।

इंटरफ़ेस एक्स्टेंसिबिलिटी

आयरनपायथन के प्रमुख लाभों में से एक .नेट भाषा में लिखे गए अनुप्रयोग रूपरेखा के लिए एक्स्टेंसिबिलिटी परत के रूप में इसका कार्य है। आयरनपायथन दुभाषिया को उपस्थित .नेट अनुप्रयोग रूपरेखा में एकीकृत करना अपेक्षाकृत सरल है। एक बार स्थापित हो जाने के बाद, डाउनस्ट्रीम डेवलपर आयरनपायथन में लिखी गई स्क्रिप्ट का उपयोग कर सकते हैं जो रूपरेखा में .नेट ऑब्जेक्ट्स के साथ इंटरैक्ट करती हैं, जिससे रूपरेखा के किसी भी कोड बेस को बदले बिना रूपरेखा के इंटरफेस में कार्यक्षमता का विस्तार होता है।[30]

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

उदाहरण

निम्नलिखित आयरनपायथन स्क्रिप्ट .नेट रूपरेखा ऑब्जेक्ट्स में हेरफेर करती है। यह स्क्रिप्ट तृतीय-पक्ष क्लाइंट-साइड अनुप्रयोग डेवलपर द्वारा आपूर्ति की जा सकती है और इंटरफ़ेस के माध्यम से सर्वर-साइड रूपरेखा में पास की जा सकती है। ध्यान दें कि क्लाइंट अनुप्रयोग द्वारा आवश्यक विश्लेषणों का समर्थन करने के लिए न तो इंटरफ़ेस और न ही सर्वर-साइड कोड को संशोधित किया गया है।

from BookService import BookDictionary
 
booksWrittenByBookerPrizeWinners = [book.Title for book in BookDictionary.GetAllBooks() 
                                    if "Booker Prize" in book.Author.MajorAwards]

इस स्थिति में, मान लें कि .नेट रूपरेखा बुक सेवा नामक मॉड्यूल में वर्ग, बुक डिक्शनरी को प्रयुक्त करता है, और इंटरफ़ेस प्रकाशित करता है जिसमें आयरनपायथन स्क्रिप्ट को भेजा और निष्पादित किया जा सकता है।

यह स्क्रिप्ट, जब उस इंटरफ़ेस पर भेजी जाती है, तो रूपरेखा द्वारा अनुरक्षित पुस्तकों की पूरी सूची पर पुनरावृति करेगी, और बुकर पुरस्कार विजेता लेखकों द्वारा लिखी गई पुस्तकों को चुनेगी।

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

निम्न स्क्रिप्ट सरल हैलो वर्ल्ड संदेश बनाने के लिए .नेट रूपरेखा का उपयोग करती है।

import clr
clr.AddReference("System.Windows.Forms")

from System.Windows.Forms import MessageBox
MessageBox.Show("Hello World")
Performance

प्रदर्शन

C पायथन की तुलना में आयरनपायथन की प्रदर्शन विशेषताएँ, पायथन का संदर्भ कार्यान्वयन, उपयोग किए गए स्पष्ट बेंचमार्क पर निर्भर करता है। थ्रिस्टोन स्क्रिप्ट के साथ लिए गए अधिकांश बेंचमार्क पर आयरनपायथन सीपायथन से खराब प्रदर्शन करता है लेकिन अन्य बेंचमार्क पर अच्छा है।[31]

आयरनपायथन पायथन प्रोग्राम्स में अच्छा प्रदर्शन कर सकता है जो थ्रेड्स या मल्टीपल कोर का उपयोग करते हैं, क्योंकि इसमें समय-समय पर संकलन कंपाइलर है, और इसलिए भी कि इसमें ग्लोबल इंटरप्रेटर लॉक नहीं है।[32][33]

यह भी देखें


संदर्भ

  1. "Jim Hugunin's blog: IronPython 1.0 released today!". 2006-09-05. Retrieved 2006-12-14.
  2. "Release dates for ironpython". 2008-12-10. Retrieved 2009-01-25.
  3. Clarke, Gavin (2010-10-22). "Microsoft cuts loose Iron languages". The Register. Retrieved 2012-04-05.
  4. "IronPython.net". Retrieved 2013-07-03.
  5. "Python Tools for Visual Studio- Home". Python Tools for Visual Studio. Archived from the original on 2018-01-26. Retrieved 2013-07-03.
  6. "Dynamic Language Runtime Overview". Microsoft. Retrieved 2014-04-01.
  7. "2009-07-02 Marek Safar · mono/Mono@340222f". GitHub.
  8. "2.0.3". ironpython.codeplex.com. Archived from the original on 2017-12-26. Retrieved 2010-10-16.
  9. "2.6". ironpython.codeplex.com. Archived from the original on 2018-01-13. Retrieved 2010-10-16.
  10. "2.7". ironpython.codeplex.com. Archived from the original on 2018-01-02. Retrieved 2011-03-12.
  11. "2.7.1". ironpython.codeplex.com. Archived from the original on 2017-12-26. Retrieved 2011-12-30.
  12. "2.7.2.1". ironpython.codeplex.com. Archived from the original on 2017-12-26. Retrieved 2012-03-24.
  13. "2.7.4". ironpython.codeplex.com. Archived from the original on 2018-01-16. Retrieved 2014-12-07.
  14. "2.7.5". ironpython.codeplex.com. Archived from the original on 2018-01-26. Retrieved 2014-12-07.
  15. "2.7.6". github.com. Retrieved 2016-08-21.
  16. "2.7.7". github.com. Retrieved 2018-01-05.
  17. "2.7.8". github.com. Retrieved 2018-01-05.
  18. "2.7.9". github.com. Retrieved 2018-10-09.
  19. "IronLanguages/ironpython2". GitHub (in English). Retrieved 2020-06-26.
  20. "Releases · IronLanguages/ironpython2". GitHub (in English). Retrieved 2022-08-08.
  21. "Differences between IronPython 1.0 and CPython 2.4.3". Microsoft. 2007-12-18. Retrieved 2008-02-09.
  22. Foord, Michael. "New Project: Implementing .NET Libraries in Pure Python". Archived from the original on 2008-08-30. Retrieved 2008-02-09.
  23. Eby, Phillip (15 October 2005). "Children of a Lesser Python". Retrieved 2008-07-09.
  24. "NumPy and SciPy for .NET". Retrieved 2019-04-05.
  25. "Silverlight 5 System Requirements". www.microsoft.com. Retrieved 2019-11-16.
  26. "Write browser applications in Python". IronPython.net. Archived from the original on 2013-03-17.
  27. "Original IronPython homepage". 2004-07-28. Archived from the original on February 23, 2010. Retrieved 2007-05-13.
  28. "Shared Source License for IronPython". 2006-04-28. Retrieved 2007-05-13.
  29. "Microsoft permissive license". 2007-04-28. Retrieved 2007-05-13.
  30. "Using .NET objects from IronPython in Resolver One". Archived from the original on 2009-01-14. Retrieved 2008-11-18.
  31. "IronPython Performance Report". Retrieved 2009-10-05.[permanent dead link]
  32. "IronPython at python.org". python.org. Retrieved 2011-04-04. IronPython has no GIL and multi-threaded code can use multi core processors.
  33. "Python's Hardest Problem, Revisited". Archived from the original on 2015-10-31. Retrieved 2015-07-15.

बाहरी संबंध