Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

mruby - это интерпретатор языка программирования Ruby, который должен быть легким и легко встраиваемым. [3] [4] Проект возглавляет Юкихиро Мацумото , над проектом в настоящее время работают более 100 участников.

Особенности [ править ]

mruby 1.0 поддерживает базовую точку доступа Ruby 2.1, но не поддерживает стандартную библиотеку. Помимо возможности выполнять самый базовый код Ruby, mruby также имеет компилятор байт-кода и виртуальную машину , а также возможность легко встраиваться и интегрироваться в код C или C ++ аналогично Lua или Tcl .

mruby 2.0.0 [5] добавляет поддержку нескольких методов Ruby 2.x помимо Ruby 2.1. v2.0.0 также изменен на формат инструкций байт-кода переменной длины.

Байт-код mruby может быть встроен в код C и, таким образом, может быть скомпилирован в отдельный исполняемый файл. [6]

mruby также стремится [3] соответствовать стандарту ISO / IEC 30170: 2012. [7]

Примеры [ править ]

Вызов Мруби из C [ править ]

#include  <stdio.h>#include  <mruby.h>#include  <mruby / compile.h>int  main ( void )  {  mrb_state  * mrb  =  mrb_open ();  char  code []  =  "5 раз {ставит 'mruby is awesome!' } " ; printf ( "Выполнение кода Ruby с помощью mruby: \ n " );  mrb_load_string ( mrb ,  код ); mrb_close ( mrb );  возврат  0 ; }

Предполагая, что у вас установлен mruby и на вашем пути, следующая программа может быть скомпилирована и запущена с помощью следующей команды из вашего терминала: [8]

$ cc example.c -lmruby -lm -o пример$ ./example

Предварительно скомпилированный байт-код [ править ]

mruby включает в себя минималистичный виртуальную машину , используемую для выполнения mruby байткодом , прозванный ritevm :

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

Первая команда компилирует код Ruby в байт-код mruby, создавая файл с именем «test.mrb», который затем можно выполнить, добавив флаг «-b» к обычным аргументам интерпретатора. [9]

Ссылки [ править ]

  1. ^ "Мрубые релизы" . Проверено 8 января 2020 г. - через GitHub .
  2. ^ «ЛИЦЕНЗИЯ» . Github . Проверено 6 сентября 2019 .
  3. ^ a b "мрубы / мрубы" . GitHub . Проверено 30 апреля 2018 .
  4. ^ объявили mruby и MobiRuby
  5. ^ "Выпущен mruby 2.0.0" . mruby.org . Проверено 1 апреля 2019 .
  6. ^ «Выполнение кода Ruby с помощью mruby» . mruby.org . Проверено 1 апреля 2019 .
  7. ^ 14: 00-17: 00. «ISO / IEC 30170: 2012» . ISO . Проверено 1 апреля 2019 .CS1 maint: числовые имена: список авторов ( ссылка )
  8. ^ Aimonetti, Мэтт (2012-04-25). «Начало работы с мруби» . Проверено 29 декабря 2013 .
  9. ^ geekmonkey (2012-10-30). «Введение в Mini Ruby» . Проверено 29 декабря 2013 .