PyPy CPython का कांटा नहीं है, इसलिए इसे सीधे CPython में विलय नहीं किया जा सकता है।
सैद्धांतिक रूप से अजगर समुदाय सार्वभौमिक रूप से PyPy को अपना सकता है, PyPy को संदर्भ कार्यान्वयन बनाया जा सकता है, और CPython को बंद किया जा सकता है। हालाँकि, PyPy की अपनी कमजोरियाँ हैं:
- CPython C में लिखे पायथन मॉड्यूल के साथ एकीकृत करना आसान है, जो पारंपरिक रूप से Python अनुप्रयोगों ने CPU-गहन कार्यों को संभाला है (उदाहरण के लिए SciPy प्रोजेक्ट देखें)।
- PyPy JIT संकलन कदम की लागत स्वयं CPU समय है - यह केवल बार-बार संकलित कोड के चलने से है कि यह समग्र रूप से तेज हो जाता है। इसका मतलब है कि स्टार्टअप समय अधिक हो सकता है, और इसलिए PyPy जरूरी नहीं है कि गोंद कोड या तुच्छ स्क्रिप्ट चलाने के लिए कुशल हो।
- PyPy और CPython व्यवहार सभी मामलों में समान नहीं है, खासकर जब यह "कार्यान्वयन विवरण" (व्यवहार जो भाषा द्वारा निर्दिष्ट नहीं है लेकिन व्यावहारिक स्तर पर अभी भी महत्वपूर्ण है) की बात आती है।
- CPython PyPy की तुलना में अधिक आर्किटेक्चर पर चलता है और सफलतापूर्वक एम्बेडेड आर्किटेक्चर में चलने के लिए अनुकूलित किया गया है जो PyPy के लिए अव्यावहारिक हो सकता है।
- स्मृति प्रबंधन के लिए CPython की संदर्भ गणना योजना यकीनन PyPy की विभिन्न GC प्रणालियों की तुलना में अधिक अनुमानित प्रदर्शन प्रभाव है, हालांकि यह सभी "शुद्ध GC" रणनीतियों के लिए जरूरी नहीं है।
- PyPy अभी तक Python 3.x का पूरी तरह से समर्थन नहीं करता है, हालांकि यह एक सक्रिय कार्य आइटम है।
PyPy एक बेहतरीन परियोजना है, लेकिन CPU-गहन कार्यों पर रनटाइम गति सब कुछ नहीं है, और कई अनुप्रयोगों में यह कई चिंताओं से कम है। उदाहरण के लिए, Django PyPy पर चल सकता है और इससे गति तेज होती है, लेकिन CPython के डेटाबेस ड्राइवर PyPy की तुलना में तेज़ होते हैं; अंत में, जो कार्यान्वयन अधिक कुशल है, यह निर्भर करता है कि दिए गए आवेदन में अड़चन कहां है।
एक अन्य उदाहरण: आपको लगता है कि PyPy खेलों के लिए बहुत अच्छा होगा, लेकिन PyPy में उपयोग की जाने वाली अधिकांश GC रणनीतियाँ ध्यान देने योग्य घबराहट का कारण बनती हैं। सीपीथॉन के लिए, अधिकांश सीपीयू-गहन गेम सामग्री को PyGame लाइब्रेरी में लोड किया गया है, जो PyPy का लाभ नहीं उठा सकता है क्योंकि PyGame को मुख्य रूप से C एक्सटेंशन (हालांकि देखें: pygame-cffi) के रूप में लागू किया गया है। मुझे अभी भी लगता है कि PyPy गेम्स के लिए एक बेहतरीन प्लेटफॉर्म हो सकता है, लेकिन मैंने इसे वास्तव में कभी इस्तेमाल नहीं किया है।
PyPy और CPython में मौलिक डिजाइन प्रश्नों के लिए अलग-अलग दृष्टिकोण हैं और विभिन्न ट्रेडऑफ़ बनाते हैं, इसलिए हर मामले में दोनों में से कोई भी "बेहतर" नहीं है।