2008-09-17 7 views
9

मैं पाइथन के लिए अपेक्षाकृत नया हूं, और मैंने हमेशा मानक cpython (v2.5) कार्यान्वयन का उपयोग किया है।विभिन्न पायथन कार्यान्वयन के पेशेवरों और विपक्ष क्या हैं?

हालांकि मैं अन्य कार्यान्वयन के बारे में सोच रहा हूं, खासकर ज्योथन और आयरनपीथन। क्या उन्हें बेहतर बनाता है? क्या उन्हें बदतर बना देता है? वहां अन्य कार्यान्वयन क्या हैं?

मुझे लगता है कि मैं जो खोज रहा हूं वह सारांश और प्रत्येक कार्यान्वयन के लिए पेशेवरों और विपक्ष की सूची है।

उत्तर

1

पेशेवर: जेवीएम या सीएलआर के लिए उपलब्ध पुस्तकालयों तक पहुंच।

विपक्ष: सुविधाओं के संदर्भ में दोनों स्वाभाविक रूप से सीपीथन के पीछे अंतराल। यदि आप किसी भिन्न मंच में लिखा मौजूदा पुस्तकालयों के साथ इंटरफेस करने एक अधिभावी की जरूरत है

15

Jython और IronPython उपयोगी होते हैं जैसे आप जावा के 100000 लाइनों है और आप केवल 20 लाइन अजगर स्क्रिप्ट लिखने के लिए चाहते हैं, तो । मेरी राय में, किसी और चीज के लिए विशेष रूप से उपयोगी नहीं है, क्योंकि वे सामुदायिक जड़त्व के कारण सीपीथॉन के पीछे लगातार कुछ संस्करण हैं।

स्टैकलेस दिलचस्प है क्योंकि इसमें हरे धागे, निरंतरता इत्यादि के लिए समर्थन है। इरलांग-लाइट का क्रमबद्ध करें।

पायपी एक प्रयोगात्मक दुभाषिया/कंपाइलर है जो एक दिन सप्लांट सीपीथन हो सकता है, लेकिन अब के लिए नए विचारों के लिए एक टेस्टबेड है।

+1

स्टैकलेस (हरी धागे, आदि) के लिए कुछ जादू py.magic लाइब्रेरी में CPython कार्यान्वयन के लिए उपलब्ध है, जिसे पीपीपी द्वारा विकसित किया गया था। जहां तक ​​मुझे पता है, बेकार विकसित कुछ हद तक शांत है, एर्लांग-लाइट सुविधाओं के अधिकांश काम अब पीपीपी में जा रहे हैं। – Ryan

3

कार्यान्वयन के सभी यहाँ सूचीबद्ध हैं:

https://wiki.python.org/moin/PythonImplementations

CPython "संदर्भ कार्यान्वयन" और गुइडो और कोर डेवलपर्स द्वारा विकसित है।

+1

लिंक आजकल 404 (2012 अगस्त) देता है। – FooF

1

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

ज्योथन या आयरनपीथन का उपयोग करने में एक नकारात्मक पक्ष यह है कि आप देशी सी मॉड्यूल का उपयोग नहीं कर सकते हैं, इन्हें केवल सीपीथन में ही उपयोग किया जा सकता है।

1

PyPy RPython में लिखा गया एक पायथन कार्यान्वयन है जो एक पायथन सबसेट है।

RPYthon का अनुवाद वीएम पर चलाने के लिए किया जा सकता है या मानक पायथन के विपरीत, RPython को सांख्यिकीय रूप से संकलित किया जा सकता है।

6

कम से कम कुछ के लिए ज्योथन के लिए एक अतिरिक्त लाभ it lacks the GIL (ग्लोबल इंटरप्रेटर लॉक) है और जावा के मूल धागे का उपयोग करता है। इसका मतलब है कि आप समान पाइथन कोड को समानांतर में चला सकते हैं, जीआईएल के साथ कुछ भी संभव नहीं है।

+0

आयरनपीथन के साथ ही! –

संबंधित मुद्दे