mruby

Implementación ligera del lenguaje de programación Ruby

mruby es una implementación del lenguaje de programación Ruby, creada con la intención de ser ligera y fácilmente integrable.[2]​ El desarrollo está liderado por Yukihiro Matsumoto con más de 100 colaboradores trabajando actualmente en el proyecto.

mruby
Información general
Tipo de programa implementación de lenguaje de programación
Desarrollador Yukihiro Matsumoto.
Lanzamiento inicial 20 de abril de 2012 (12 años y 13 días)
Licencia Licencia MIT
Información técnica
Programado en C
Estándares ISO/IEC 30170:2012
Versiones
Última versión estable 3.3.0 ( 14 de febrero de 2024 (2 meses y 18 días)[1]​)
Enlaces

Características editar

mruby 1.0 soporta la API de Ruby 2.1, pero no la librería estándar. Además de poder ejecutar código Ruby básico. También tiene un compilador bytecode y una máquina virtual integrada, en conjunto con la posibilidad de ser fácilmente integrado con programas hechos en C o C++. De manera similar a Lua o Tcl.

mruby 2.0[3]​ añade soporte a varios métodos de Ruby 2.x más allá de Ruby 2.1, además también se modificó el formato de instrucciones bytecode.

El bytecode de mruby puede ser integrado fácilmente en código C, y por lo tanto es posible compilarlo en un ejecutable.[4]

mruby se desarrolla para ser compatible con el estándar ISO/IEC 30170:2012.[5]

Ejemplos editar

mruby desde C editar

#include <stdio.h>
#include <mruby.h>
#include <mruby/compile.h>

int main(void) {
    mrb_state *mrb = mrb_open();
    char codigo[] = "5.times { puts 'MRuby es increible!' }";
    
    printf("Ejecutando codigo Ruby con MRuby\n");
    mrb_load_string(mrb, codigo);
    
    mrb_close();
    return 0;
}

Asumiendo que la librería y encabezados de mruby estén instalados, este programa puede ser compilado y ejecutado con los siguientes comandos en una terminal:

cc example.c -lmruby -lm -o example
./example

Bytecode Precompilado editar

mruby incluye una máquina virtual mínima para ejecutar bytecode compilado con mruby, llamada RiteVM:

mrbc test.rb
mruby -b test.mrb

El primer comando compila el código Ruby en bytecode de mruby, creando un archivo llamado "test.mrb", que luego puede ser ejecutado con el intérprete usando el indicador "-b" .[6]

Referencias editar

  1. https://mruby.org/releases/2024/02/14/mruby-3.3.0-released.html
  2. «mruby and mobiruby». matt.aimonetti.net (en inglés estadounidense). 20 de abril de 2012. Consultado el 1 de octubre de 2023. 
  3. «mruby 2.0.0 released». mruby.org (en inglés). Consultado el 1 de octubre de 2023. 
  4. «Executing Ruby code with mruby». mruby.org (en inglés). Consultado el 1 de octubre de 2023. 
  5. 14:00-17:00. «ISO/IEC 30170:2012». ISO (en inglés). Consultado el 1 de octubre de 2023. 
  6. «Executing Ruby code with mruby». mruby.org (en inglés). Consultado el 1 de octubre de 2023. 

Enlaces externos editar