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,
$SAFE
es un estado global del proceso y se puede establecer 0 nuevamente. - Rendimiento mejorado de
block.call
cuándoblock
se pasa comoblock
parámetro. Proc#call
se ha acelerado.- El
RubyVM::AST
módulo experimental , que tiene un método de análisis que analiza un código de cadena y devuelve nodos AST. Además, elparse_ file
método analiza un archivo de código y devuelve nodos AST. - La
RubyVM::AST::Node
clase experimental muestra información de ubicación y nodos secundarios deNode
objetos. - Los nombres constantes pueden comenzar con una letra mayúscula no ASCII.
- Se introducen gamas infinitas, que funcionan como si no tuvieran fin.
theap
Se introduce Transient Heap ( ), quetheap
sirve 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
Mutex
clase se ha reescrito para hacerla más pequeña y rápida.Mutex
se 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_by
yString#concat
.
Otras mejoras en Ruby 2.5 incluyen:
Struct/new
puede crear clases que acepten argumentos de palabras clave.Do/end
Los bloques ahora funcionarán directamente conensure/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.