mruby

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
mruby
Тип інтерпретатор Ruby
Розробник Yukihiro Matsumoto et al.
Перший випуск 20 квітня 2012; 12 років тому (2012-04-20)
Стабільний випуск 3.0 (5 березня 2021; 3 роки тому (2021-03-05)[1])
Операційна система крос-платформовий
Мова програмування C та Ruby
Ліцензія MIT License[2]
Стандарт(и) ISO/IEC 30170:2012
Репозиторій github.com/mruby/mruby
Вебсайт mruby.org

mruby — вбудовуваний інтерпретатор динамічної об'єктно-орієнтованої мови програмування Ruby. Mruby забезпечує сумісність синтаксису на рівні Ruby 1.9, але також підтримує окремі можливості з новіших версій. Інтерпретатор відрізняється низьким споживанням пам'яті і можливістю вбудовування в інші застосунки. Крім того, підтримується компіляція Ruby-програм в байт-код за допомогою компілятора mrbc, що розвивається проектом.

Код mruby поширюється під ліцензією MIT.

Приклади використання[ред. | ред. код]

Виклик mruby з C[ред. | ред. код]

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

int main(void) {
    mrb_state *mrb = mrb_open();
    char code[] = "5.times { puts 'mruby is awesome!' }";

    printf("Executing Ruby code with mruby:\n");
    mrb_load_string(mrb, code);

    mrb_close(mrb);
    return 0;
}

Мається на увазі, що ви вже встановленим mruby у доступну путь, тоді ця програма може бути відкомпільована і виконана такими командами з вашого термінала:[3]

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

Компіляція у байт-код[ред. | ред. код]

mruby включає мінімалістичну віртуальну машину ritevm, що використовується для виконання байт-коду mruby:

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

Перша команда компілює початковий код Ruby у байт-код mruby, створюючи файл з назвою "test.mrb", який може потім бути виконаний додаванням опції "-b" до звичайних параметрів інтерпретатора.[4]

Виноски[ред. | ред. код]

  1. mruby 3.0.0. Архів оригіналу за 5 березня 2021. Процитовано 5 березня 2021.
  2. LICENSE. Github. Архів оригіналу за 21 лютого 2022. Процитовано 6 вересня 2019.
  3. Aimonetti, Matt (25 квітня 2012). Getting started with mruby. Архів оригіналу за 26 січня 2021. Процитовано 29 грудня 2013.
  4. geekmonkey (30 жовтня 2012). An introduction to Mini Ruby. Архів оригіналу за 7 липня 2015. Процитовано 29 грудня 2013.

Посилання[ред. | ред. код]