以前のバージョンのダウンロード Stable v 1.0 download (Jan. 2014) Stable v 1.1 download(Nov. 2014) Stable v 1.2 download(Nov. 2015) Stable v 1.3 download(July. 2017) Stable v 1.4.1 download(Apr. 2018) Stable v 2.0 download(Dec. 2018) Stable v 2.01 download(Apr. 2019) Stable v 2.1.0 download(Nov. 2019) Stable v 2.1.1 download(Jun. 2020) Stable v 2.1.2 download(Aug. 2020) Stable v 3.0.0 download(Mar. 2021) momo-mru
しまねソフト研究開発センターは、「ET&IoT 2021」(2021年11月17~19日、パシフィコ横浜)の「フクオカしまねmruby×IoTパビリオン」において、軽量の組み込み機器向けプログラミング言語「mruby/c」の採用事例や、プログラミングに詳しくない初学者や製造業の技術者向けのローコード開発環境などを紹介した。 mruby/cは、軽量Rubyとして知られるmrubyをさらに小型化した組み込み機器向けプログラミング言語である。消費メモリ容量は数十KB(50KB未満)で、16ビットマイコンでも実装可能なことを特徴としている。その一方で、Rubyの持つ生産性、表現力の高さを引き継いでおり、組み込み機器の開発で広く用いられているC言語よりも短いステップで実装が可能だ。 これまでmruby/cの採用事例の多くはIoT(モノのインターネット)プロジェクトのPoC(概念実証)などが多かったが
注意! 2016年現在、この記事の内容は古く、間違いが含まれます。 最新のmruby-minigameのAPIと違う。 Image#hold_drawingの説明が間違っている。 いわゆる、スプライトバッチの機能なので「描画順が担保されない」は間違い。 mrubyのVisual Studioツールチェインのデフォルトはデバッグビルドではなくなっている。 現在のAllegro5のWindowsバイナリの入手方法はNuGet経由になっている。 この投稿は mruby Advent Calendar 2013 5日目の記事です。 mruby-minigameは2Dゲームプログラミングのためのmruby拡張モジュールです。 アイデアが思い浮んだ時に パッと動くところまで実装できるようなフレームワーク/ライブラリを目指しています。 この記事ではmruby-minigameのビルドと簡単に使い方の説明
2021年3月5日に、mruby 3.0.0 のリリースがされました。おめでとうございます! mruby.org これに関連してなのか、mrubyをこれから始めようとか、ここのところどうなっていますかという質問をちょくちょく受けたり、ツイートを拝見したりするようになりました。 一方で、どうしても情報が古い、あるいは多くのmgemのメンテナンス状況が悪いように見える、などの初学者にとっては難しい状況が広がっており、厳しい気持ちになったり、厳しい感想を述べたりされている方もいるように思います。そして、その感想中には誤解も含まれているようです。 ここでいったん、少しでも「心構え」ができるように、これから触ってみる方々に対しての自分の考えをまとめておこうと思いました。 (さらにいうと、基本的に本原稿はいちユーザ、それもWebインフラに関わるユーザとしての解釈なので、Matzをはじめとした他のmru
mrubyについていろいろ調べながらプログラムを書いてます。 その中で調べたことについて書いておきます。 主に、C言語からmrubyにメソッドを追加したり呼び出したりすることについてです。 http://avr.paslog.jp/article/2492088.html や http://akasata.hatenablog.com/entry/2012/05/30/202432 を参考にしています。 // メソッドを定義します。 // 二つ目の引数では定義する先のモジュールを指定するようですが、 // ここはKernelにしたので関数のように使えます。 // mrbはmrb_stateで、多くのの関数で引数になっています。 mrb_state *mrb = mrb_open(); // のようにして生成します。 mrb_define_method(mrb, mrb->kernel_mo
よくやってしまう+これからもやってしまうこと。 (2014/4/28追記:1つめにmruby-clang-plugin紹介) (2014/4/6追記:4つめ) mrb_funcall()の可変引数部分は全部mrb_valueじゃないといけない。 ついついintなどをそのまま突っ込んじゃう。可変引数なので何を入れてもコンパイルできちゃう。けど動かない。以下使ってmrb_valueにしてから使う。 mrb_fixnum_value() mrb_float_value() mrb_str_new_cstr()/mrb_str_new_lit() ([twitter:@take_cheeze]さんのmruby-clang-pluginを使えばclang使ってコンパイル時にチェックできるぽいです。自分はまだ試せてない。。) RSTRING_PTR()はNULL終端とは限らない。 mrb_valueの
ESP-WROOM-32 では、プロセッサがシングルコアの Xtensa L106 からデュアルコアの LX6 に強化され、SRAM の容量が大幅に拡大されています。新たに Bluetooth も搭載されています。 データシートを細かく見てみると、ESP-WROOM-32 では利用可能なペリフェラルの多さにも目を惹かれます。 ESP-WROOM-02 製品ページ http://www.espressif.com/en/products/hardware/esp-wroom-02/overview データシート http://www.espressif.com/sites/default/files/documentation/0c-esp-wroom-02_datasheet_en.pdf ESP-WROOM-32 製品ページ http://www.espressif.com/en/pro
昨日の続き。 mrubyのソースコードを読むと、mrb_valueという構造体がよく出てくるのでソースコードを追いかけて使い方を調べてみた。参照しているコミット番号は昨日と同じく「9663a7」です。 mrb_valueの定義 // include/mruby/value.h:40 typdef struct mrb_value { union { mrb_float f; void *p; mrb_int i; mrb_sym sym; } value; enum mrb_vtype tt; } mrb_value; mrb_value構造体は値とその値のデータ型をもつ。enum mrb_vtypeにはMRB_TT_FIXNUMとかMRB_TT_STRINGなどが入る。valueとttは適切な組み合わせにする必要があるはず。 mrb_valueはMRB_NAN_BOXINGが定義されてい
#include <stdio.h> #include <mruby.h> #include <mruby/compile.h> #include <mruby/string.h> #include <mruby/array.h> #include <mruby/hash.h> int main( void ){ mrb_state* mrb = mrb_open(); if ( NULL != mrb ){ mrbc_context* cxt = mrbc_context_new( mrb ); mrb_value value; mrb_load_string_cxt( mrb, "def debug( var ); p var; end", cxt ); // TODO mrbc_context_free( mrb, cxt ); cxt = NULL; mrb_close( mrb
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く