Novedades de Ruby 2.6

Ruby 2.6, la última versión del venerable lenguaje dinámico, ahora está disponible como versión de producción.

Novedades de Ruby 2.6

Ruby 2.6 agrega una implementación inicial de un compilador JIT (compilador justo a tiempo) para mejorar el rendimiento de la ejecución del programa. El compilador JIT de Ruby escribe código C en el disco y produce un proceso de compilación C para generar código nativo. El compilador JIT es compatible cuando Ruby está construido por el compilador GCC, Clang o Microsoft Visual C ++, que debe estar disponible en tiempo de ejecución.

Otras características nuevas en Ruby 2.6 incluyen:

  • En un cambio de idioma, $SAFEes un estado global del proceso y se puede establecer 0 nuevamente.
  • Rendimiento mejorado de block.callcuándo blockse pasa como blockparámetro.
  • Proc#call se ha acelerado.
  • El RubyVM::ASTmódulo experimental  , que tiene un método de análisis que analiza un código de cadena y devuelve nodos AST. Además, el  parse_ filemétodo analiza un archivo de código y devuelve nodos AST.
  • La RubyVM::AST::Nodeclase experimental muestra información de ubicación y nodos secundarios de Node objetos.
  • Los nombres constantes pueden comenzar con una letra mayúscula no ASCII.
  • Se introducen gamas infinitas, que funcionan como si no tuvieran fin.
  • theapSe introduce Transient Heap ( ), que theapsirve como un montón administrado para objetos de memoria de corta duración a los que hacen referencia clases específicas.
  • El soporte Unicode ahora está en la versión 11.
  • Bundler, para administrar dependencias de gemas, ahora es una gema predeterminada.

Dónde descargar Ruby 2.6

Puede descargar Ruby 2.6 desde el sitio web del proyecto Ruby.

Versión anterior: Ruby 2.5

Ruby 2.5.0, que llega el día de Navidad de 2017, es la primera versión estable de la serie 2.5.

Aumenta el rendimiento entre un 5 y un 10 por ciento al eliminar las instrucciones de rastreo del código de bytes que se ha encontrado que son generales. En su lugar, se utiliza una técnica de instrumentación dinámica. Además, el paso de bloques por un parámetro de bloque se ha hecho tres veces más rápido que en Ruby 2.4, mediante el uso de la técnica de asignación Lazy Proc.

Otras características que mejoran el rendimiento incluyen:

  • La generación de documentos se ha mejorado al cambiar del analizador léxico heredado de IRB a Ripper.
  • La Mutexclase se ha reescrito para hacerla más pequeña y rápida. Mutexse puede utilizar para administrar el acceso a datos compartidos de subprocesos simultáneos.
  • ERB genera código a partir de una plantilla al doble de velocidad que la versión 2.4.
  • El rendimiento ha sido mejorado en una función de métodos que incluyen Array#concat, Enumerable#sort_byy String#concat.

Otras mejoras en Ruby 2.5 incluyen:

  • Struct/new puede crear clases que acepten argumentos de palabras clave.
  • Do/endLos bloques ahora funcionarán directamente con ensure/rescue/else.
  • La biblioteca pp.rb se carga automáticamente.
  • Se ha agregado una opción para imprimir el trazado inverso en orden inverso. La intención es obtener el mensaje de error principal sin necesidad de desplazarse.
  • Para mejorar las pruebas, se ofrece soporte para la medición de cobertura de rama y método. La cobertura de rama revela qué ramas se ejecutan, mientras que la cobertura de método indica qué métodos se invocan.

Ruby 2.5 también presenta una corrección de errores en la biblioteca SecureRandom, para generar números aleatorios, que ahora prefiere las fuentes proporcionadas por el sistema operativo sobre OpenSSL. Además, las bibliotecas estándar como cmath, csv, date, dbm e ipaddr se han convertido en gemas.

Dónde descargar Ruby 2.5

Puede descargar la versión 2.5 abriendo este archivo tar.gz o este archivo Zip.