Is there an advantage to running JRuby if you don't know any Java? में, लोग "रुबी" (एमआरआई/वाईएआरवी) की तुलना में रूबी के बेहतर कार्यान्वयन के लिए जेआरबीई का उपयोग करने का सुझाव दे रहे थे।एमआरआई/याएआरवी पर जेआरबीआई का उपयोग न करने के मेरे पास क्या कारण होंगे?
जेआरबीई का उपयोग न करने के लिए आपके पास क्या संभावित कारण होंगे?
वन्स कि दूसरों के द्वारा उल्लेख किया गया है कर रहे हैं: कम कार्यक्रमों के लिए
- प्रदर्शन। JRuby को लंबे कार्यक्रमों के लिए तेज़ी से वर्णित किया गया है, लेकिन लंबे समय तक प्रारंभिक समय है। वर्कअराउंड पर चर्चा की जाती है in this question।
- सी एक्सटेंशन: JRuby कुछ, but not all, सी एक्सटेंशन का समर्थन करता है जो एमआरआई/वाईएआरवी के साथ उपयोग किया जाता है।
- दो तलवार वाली तलवार के रूप में Concurrency। There's non-thread-safe code out there कि लोगों ने नहीं खोजा है क्योंकि सबसे लोकप्रिय कार्यान्वयन में सच सहमति नहीं है।
- JRuby can use more memory।
- JRuby decided not to do कुछ चीजें CRuby करता है। इसमें निरंतरताएं शामिल हैं (जो मुझे लगता है कि वैसे भी क्रुबी में बहिष्कृत हैं), और कांटा। उनके पास एक अलग देशी एंडियन और समय परिशुद्धता भी होती है।
- डिफ़ॉल्ट रूप से JRuby doesn't enable ObjectSpace।
संभावित कारणों मेरे पास है में शामिल हैं:
- पुस्तकालय आप JRuby के तहत चलाने के लिए डिज़ाइन नहीं किया जा सकता का उपयोग करें। उदाहरण के लिए, बायोरुबी, जिसमें गीटहब पर 127 दर्शक और 60 कांटे हैं, में minor incompatibility जेआरबी के साथ था।
- कम लोकप्रिय कार्यान्वयन का उपयोग करने के बारे में डर, अनिश्चितता और संदेह। मुझे पता है कि जेआरबीबी रूबीस्पेक को क्रुबी से बेहतर पास करता है, लेकिन रुबीस्पेक अभी तक पूरा नहीं हुआ है।
क्या कोई अन्य कारण हैं जो आप JRuby का उपयोग नहीं करेंगे?