De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

mruby es un intérprete del lenguaje de programación Ruby con la intención de ser ligero y fácilmente integrable. [3] [4] El proyecto está dirigido por Yukihiro Matsumoto , con más de 100 contribuyentes trabajando actualmente en el proyecto.

Funciones [ editar ]

mruby 1.0 es compatible con el AP core Ruby 2.1, pero no con la biblioteca estándar. Además de ser capaz de ejecutar código más básico Ruby, mruby también cuenta con un código de bytes compilador y máquina virtual , así como la capacidad de ser fácilmente incorporado e integrado en C o C ++ código, de manera similar a Lua o Tcl .

mruby 2.0.0 [5] agrega soporte para varios métodos Ruby 2.x más allá de Ruby 2.1. v2.0.0 también cambió al formato de instrucciones de código de bytes de longitud variable.

El código de bytes mruby se puede incrustar en el código C y, por lo tanto, se puede compilar en un ejecutable independiente. [6]

mruby también pretende [3] cumplir con la norma ISO / IEC 30170: 2012. [7]

Ejemplos [ editar ]

Llamando a mruby desde C [ editar ]

#include  <stdio.h>#include  <mruby.h>#include  <mruby / compile.h>int  main ( vacío )  {  mrb_state  * mrb  =  mrb_open ();  char  code []  =  "5.veces {pone '¡mruby es increíble!' } " ; printf ( "Ejecutando código Ruby con mruby: \ n " );  mrb_load_string ( mrb ,  código ); mrb_close ( mrb );  return  0 ; }

Suponiendo que tiene mruby instalado y en su ruta, el siguiente programa se puede compilar y ejecutar ejecutando el siguiente comando desde su terminal: [8]

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

Bytecode precompilado [ editar ]

mruby minimalista incluye una máquina virtual utilizado para ejecutar mruby código de bytes , apodado ritevm :

$ mrbc test.rb$ mruby -b prueba.mrb

El primer comando compila el código Ruby en el código de bytes mruby, creando un archivo llamado "test.mrb", que luego se puede ejecutar agregando la bandera "-b" a los argumentos normales del intérprete. [9]

Referencias [ editar ]

  1. ^ "lanzamientos de mruby" . Consultado el 8 de enero de 2020 , a través de GitHub .
  2. ^ "LICENCIA" . Github . Consultado el 6 de septiembre de 2019 .
  3. ^ a b "mruby / mruby" . GitHub . Consultado el 30 de abril de 2018 .
  4. ^ mruby y MobiRuby anunciados
  5. ^ "mruby 2.0.0 lanzado" . mruby.org . Consultado el 1 de abril de 2019 .
  6. ^ "Ejecución de código Ruby con mruby" . mruby.org . Consultado el 1 de abril de 2019 .
  7. ^ 14: 00-17: 00. "ISO / IEC 30170: 2012" . ISO . Consultado el 1 de abril de 2019 .CS1 maint: nombres numéricos: lista de autores ( enlace )
  8. Aimonetti, Matt (25 de abril de 2012). "Empezando con mruby" . Consultado el 29 de diciembre de 2013 .
  9. geekmonkey (30 de octubre de 2012). "Una introducción a Mini Ruby" . Consultado el 29 de diciembre de 2013 .