ام‌روبی

ام‌روبی یک مفسر برای زبان برنامه‌نویسی روبی است که با نیت سبک‌وزن بودن طراحی شده و به راحتی قابل جاسازی است. [3] [4] ریاست این پروژه را یوکیهیرو ماتسوموتو بر عهده دارد و بیش از ۱۰۰ مشارکت‌کننده در حال حاضر روی این پروژه کار می‌کنند.

ام‌روبی
توسعه‌دهنده(ها)یوکیهیرو ماتسوموتو et al.
انتشار ابتدایی۲۰ آوریل ۲۰۱۲ (۲۰۱۲-۰۴-20)
انتشار پایدار
۲.۱.۰
۱۹ نوامبر ۲۰۱۹ (۲۰۱۹-۱۱-19)[1]
مخزن
نوشته‌شده باسی و روبی
سیستم‌عاملچندسکویی
استاندارد(ها)ISO/IEC 30170:2012
گونهمفسر زبان برنامه‌نویسی روبی
پروانهپروانه ام‌آی‌تی[2]
وبگاه

ویژگی ها

ام‌روبی ۱.۰ از هسته روبی ۲.۱ پشتیبانی می‌کند، اما هیچ یک از کتابخانه های استاندارد نیست. ام‌روبی علاوه بر اینکه قادر به اجرای اساسی ترین کد های روبی است، از یک کامپایلر بایت‌کد و ماشین مجازی و همچنین قابلیت تعبیه و تلفیق آسان در کد سی یا C ++ ، به روشی مشابه لوآ یا تی‌سی‌ال برخوردار است.

ام‌روبی ۲.۰.۰ [5] پشتیبانی از چندین روش روبی 2.x فراتر از روبی ۲.۱ را اضافه می کند. نسخه ۲.۰.۰ نیز به فرمت دستورالعمل های بایت‌کد با طول متغیر تغییر یافت.

کد بایت ام‌روبی می‌تواند در کد C تعبیه بشود، بنابراین می تواند در یک اجرایی مستقل کامپایل شود. [6]

ام‌روبی همچنین قصد دارد [3] با استاندارد ISO / IEC 30170: 2012 سازگار باشد. [7]

مثال ها

فراخوانی 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;
}

با فرض اینکه شما ام‌روبی را نصب کرده اید و در مسیر خود هستید، برنامه زیر را می‌توان با اجرای دستور زیر از ترمینال خود کامپایل و اجرا کرد: [8]

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

بایت‌کد از پیش کامپایل شده

ام‌روبی شامل یک ماشین مجازی مینیمالیستی است که برای اجرای بایت‌کد ام‌روبی با نام مستعار ritevm استفاده می شود:

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

اولین دستور، کد روبی را به بایت‌کد ام‌روبی کامپایل می کند و فایلی به نام "test.mrb" ایجاد می کند، که پس از آن می توان با اضافه کردن پرچم "-b" به آرگومان‌های مفسر معمولی، آن را اجرا کرد. [9]

منابع

  1. "mruby releases". Retrieved 8 January 2020 via GitHub.
  2. "LICENSE". Github. Retrieved 6 September 2019.
  3. "mruby/mruby". GitHub. Retrieved 2018-04-30.
  4. mruby and MobiRuby announced
  5. "mruby 2.0.0 released". mruby.org. Retrieved 2019-04-01.
  6. "Executing Ruby code with mruby". mruby.org. Retrieved 2019-04-01.
  7. 14:00-17:00. "ISO/IEC 30170:2012". ISO. Retrieved 2019-04-01.
  8. Aimonetti, Matt (2012-04-25). "Getting started with mruby". Retrieved 2013-12-29.
  9. geekmonkey (2012-10-30). "An introduction to Mini Ruby". Retrieved 2013-12-29.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.