La sixième mise à jour du langage de programmation Ruby 2.6.0 est ici

RubyLinux

Après un an de développement, la version Ruby 2.6.0 est publiée, un langage de programmation dynamique orienté objet, caractérisé par une grande efficacité de développement logiciel et intégrant les meilleures fonctionnalités de Perl, Java, Python, Smalltalk, Eiffel, Ada et Lisp.

Le code du projet est distribué sous les licences BSD ("BSDL à 2 clauses") et "Ruby", qui fait référence à la dernière licence GPL et est entièrement conforme à la GPLv3.

Ruby 2.6 est la sixième version majeure, préparé dans le cadre d'un processus de développement planifié, qui consiste à allouer un an pour préparer les améliorations fonctionnelles et créer des versions correctives tous les 2-3 mois.

Principales nouveautés de Ruby 2.6.0

Avec cette nouvelle version de Ruby ajouté une implémentation expérimentale du compilateur JIT, qui vous permet d'améliorer considérablement les performances des applications en langage Ruby.

Contrairement aux compilateurs JIT traditionnels, qui génèrent des instructions machine à la volée, le compilateur JIT proposé dans Ruby écrit d'abord le code C sur le disque, puis appelle le compilateur C externe pour générer les instructions machine (GCC pris en charge, Clang et Microsoft VC ++).

Pour activer JIT, vous devez spécifier l'option "–jit" lors du démarrage de ruby ​​ou définir cette option dans la variable d'environnement RUBYOPT.

Par rapport à Ruby 2.5, l'inclusion de JIT représente en moyenne 1.7 fois les performances des applications gourmandes en ressources processeur.

Dans le même temps, le développement est encore expérimental et mal adapté aux charges associées à un travail intensif en mémoire.

Les autres améliorations obtenues dans cette version sont les Module expérimental RubyVM :: AbstractSyntaxTree, qui fournit une méthode d'analyse qui traite les chaînes passées en tant que code Ruby et renvoie un arbre de syntaxe abstraite (AST) pour ce code.

Maintenant, l'alias "#then" peut être utilisé pour accéder à la méthode "Kernel # yield_self". Pour les méthodes "Array # |" et "Array # -" suggéraient des alias plus lisibles "Array # union" et "Array # Difference".

Les noms de constantes peuvent désormais commencer par des lettres majuscules autres que ASCII.

Un support a également été fourni pour Transient Heap, theap destiné aux objets à courte durée de vie utilisant des classes spécifiques (Array, Hash, Object, Struct).

rubis sur rails

Par exemple, grâce à theap, la création de petits hachages existants de courte durée est désormais deux fois plus rapide. Le test rdoc a montré une augmentation du rendement de 6 à 7%.

Pour augmenter les performances des commutateurs de contexte, des implémentations natives de coroutines sont proposées pour les architectures arm32, arm64, ppc64le, win32, win64, x86 et amd64. «Fiber.yield» et «Fiber # resume» sur les systèmes Linux 64 bits fonctionnent désormais presque 5 fois plus vite.

En général, les programmes intensifs montrent une augmentation des performances de 5%.

Améliorations majeures de Ruby 2.6.0

Une version mise à jour de RubyGems 3.0.1 a été reçue, dans lequel la prise en charge des options "–ri" et "–rdoc" a été abandonnée, au lieu de quoi vous devriez utiliser "–document" et "–no-document".

Bundler est maintenant installé par défaut pour gérer les dépendances des gemmes.

Ajout de la prise en charge des plages inachevées, par exemple "ary [1 ..]" ou "(1 ..). Chaque {…} ".

Parmi les autres améliorations qui peuvent être mises en évidence, vous pouvez trouver:

  • L'option d'exception a été ajoutée à la méthode système Kernel # pour déclencher une exception en cas d'erreur au lieu de renvoyer false.
  • Le mode onehot a été ajouté au module de couverture, qui vérifie si chaque ligne s'exécute au moins une fois.
  • La classe Enumerator :: Chain et les méthodes «Enumerable # chain» et «Enumerator # +» implémentées dans celle-ci sont ajoutées pour créer des chaînes de valeurs énumérées.
  • Le support des opérateurs «<<» et «>>» a été ajouté aux modules Proc et Method, par exemple, la construction «(f << g) .call (3)» est identique à «f (g (3 )) ".

Comment installer Ruby 2.6.0 sur Linux?

Pour obtenir cette nouvelle version de Ruby, ouvrez simplement un terminal sur votre système et tapez l'une des commandes suivantes

Debian, Ubuntu et dérivés

sudo apt-get install ruby-full

CentOS, Fedora et RHEL

sudo yum install ruby

Gentoo

sudo emerge dev-lang/ruby

Arch Linux, Manjaro, Antergos et dérivés

sudo pacman -S ruby

openSUSE

sudo zypper install ruby

Le contenu de l'article adhère à nos principes de éthique éditoriale. Pour signaler une erreur, cliquez sur c'est par ici !.

Un commentaire, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

*

*

  1. Responsable des données : AB Internet Networks 2008 SL
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Daniel dit

    Les commandes apt-get yum etc vont dans les référentiels par défaut des distributions, qui sont généralement anciens et vous n'aurez pas la version 2.6 mais une autre ancienne version.