التحديث السادس للغة برمجة Ruby 2.6.0 موجود هنا

روبي لينكس

بعد عام من التطوير ، تم نشر إصدار Ruby 2.6.0 ، لغة برمجة ديناميكية موجهة للكائنات ، تتميز بكفاءة عالية في تطوير البرامج وتضم أفضل ميزات Perl و Java و Python و Smalltalk و Eiffel و Ada و Lisp.

يتم توزيع كود المشروع بموجب تراخيص BSD ("2-clause BSDL") و "Ruby" ، والتي تشير إلى أحدث ترخيص GPL ومتوافق تمامًا مع GPLv3.

روبي 2.6 هو الإصدار الرئيسي السادس، التي تم إعدادها كجزء من عملية التطوير المخطط لها ، والتي تتضمن تخصيص عام لإعداد تحسينات وظيفية وإنشاء إصدارات تصحيحية كل شهرين إلى ثلاثة أشهر.

الميزات الرئيسية الجديدة في Ruby 2.6.0

مع هذا الإصدار الجديد من روبي إضافة تطبيق تجريبي لمترجم JIT ، مما يسمح لك بتحسين أداء التطبيقات بلغة Ruby بشكل ملحوظ.

على عكس مترجمي JIT التقليديين ، الذين يولدون تعليمات الآلة على الفور ، فإن مترجم JIT المقترح في Ruby يكتب أولاً رمز C إلى القرص ، ثم يستدعي مترجم C الخارجي لإنشاء تعليمات الجهاز (GCC المدعومة ، Clang و Microsoft VC ++).

لتمكين JIT ، يجب عليك تحديد الخيار "–jit" عند بدء روبي أو تعيين هذا الخيار في متغير بيئة RUBYOPT.

مقارنةً بـ Ruby 2.5 ، فإن تضمين JIT يبلغ متوسط ​​أداء تطبيقات وحدة المعالجة المركزية المكثفة 1.7 مرة.

في الوقت نفسه ، لا يزال التطوير تجريبيًا وغير مناسب للأحمال المرتبطة بالعمل المكثف للذاكرة.

التحسينات الأخرى التي تم الحصول عليها في هذا الإصدار هي RubyVM :: AbstractSyntaxTree وحدة تجريبية، والذي يوفر طريقة تحليل تعالج السلاسل التي تم تمريرها كرمز روبي وإرجاع شجرة بناء الجملة المجردة (AST) لهذا الرمز.

يمكن الآن استخدام الاسم المستعار "#then" للوصول إلى طريقة "Kernel # exchan_self". لطرق "Array # |" واقترح "Array # -" أسماء مستعارة أكثر قابلية للقراءة "Array # union" و "Array # Difference".

يمكن أن تبدأ الأسماء الثابتة الآن بأحرف كبيرة بخلاف ASCII.

تم تقديم الدعم أيضًا لـ Transient Heap ، theap المخصص للكائنات ذات العمر الافتراضي القصير باستخدام فئات محددة (Array ، Hash ، Object ، Struct).

روبي على القضبان

على سبيل المثال ، بفضل theap ، أصبح إنشاء تجزئات موجودة صغيرة وقصيرة العمر أسرع بمرتين. أظهر اختبار rdoc زيادة في المحصول بنسبة 6-7٪.

لزيادة أداء محولات السياق ، تم اقتراح تطبيقات أصلية لـ coroutines للأبنية arm32 و arm64 و ppc64le و win32 و win64 و x86 و amd64. يعمل "Fiber.yield" و "Fibre #." استئناف تشغيل أنظمة Linux 64 بت أسرع بخمس مرات تقريبًا.

بشكل عام ، تظهر البرامج المكثفة زيادة في الأداء بنسبة 5٪.

تحسينات كبيرة في Ruby 2.6.0

تم استلام نسخة محدثة من RubyGems 3.0.1، حيث تم إيقاف دعم الخيارين "–ri" و "–rdoc" ، وبدلاً من ذلك يجب عليك استخدام "–document" و "– no-document".

يتم الآن تثبيت Bundler افتراضيًا لإدارة تبعيات الأحجار الكريمة.

تمت إضافة دعم للنطاقات غير المكتملة ، على سبيل المثال ، "ary [1 ..]" أو "(1 ..). كل {…} ".

من بين التحسينات الأخرى التي يمكن إبرازها ، يمكنك العثور على:

  • تمت إضافة خيار الاستثناء إلى طريقة نظام Kernel # لرفع استثناء عند الخطأ بدلاً من إرجاع خطأ.
  • كان وضع ونشوت تمت إضافته إلى وحدة التغطية ، والتي تتحقق مما إذا كان يتم تنفيذ كل صف مرة واحدة على الأقل.
  • تمت إضافة فئة Enumerator :: Chain وطرق "Enumerable # chain" و "Enumerator # +" المطبقة فيه لإنشاء سلاسل من القيم التي تم تعدادها.
  • تمت إضافة دعم المشغلين «<<» و «>>» إلى وحدتي Proc و Method ، على سبيل المثال ، البناء «(f << g). )) ".

كيفية تثبيت Ruby 2.6.0 على Linux؟

للحصول على هذا الإصدار الجديد من Ruby ، ​​فقط افتح Terminal على نظامك واكتب أحد الأوامر التالية

دبيان وأوبونتو ومشتقاته

sudo apt-get install ruby-full

CentOS و Fedora و RHEL

sudo yum install ruby

جنتو

sudo emerge dev-lang/ruby

Arch Linux و Manjaro و Antergos ومشتقاته

sudo pacman -S ruby

زحمة

sudo zypper install ruby

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: AB Internet Networks 2008 SL
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   دانيال قال

    تنتقل أوامر apt-get yum وما إلى ذلك إلى المستودعات الافتراضية للتوزيعات ، والتي تكون قديمة عمومًا ولن يكون لديك الإصدار 2.6 بل إصدار قديم آخر.