49
Apr 23,2013 QCon Tokyo 2013 mruby の今 そして目指すもの 邑中 雅樹 / 合同会社もなみ屋 1

mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Apr 23,2013QCon Tokyo 2013

mruby の今そして目指すもの邑中 雅樹 / 合同会社もなみ屋

1

Page 2: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

あらすじ• mrubyとは (“組込み”とは?)

• mrubyができること (CRubyや他の言語とくらべて)

• mrubyの現在

• mrubyの開発体制 (git, github, fork, pull request)

•統計情報で見る mruby

• mrubyの未来

2

Page 3: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

講演者自己紹介

•所属: 合同会社もなみ屋

•プログラマ,ソフトウェア系の技術解説文書の執筆

•得意分野: 組込みシステムのオープンソース適用

• GNU debugger, TOPPERS,mruby

3

Page 4: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

講演者の属性Ruby度数

組込み度数4

Page 5: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

いろいろ書いています.

5

Page 6: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

組み込みネットへの掲載

6

Page 7: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

自己紹介

Apr 23,2013QCon Tokyo 2013

逆質問

• Ruby系 or 組込み系?

• git を常用なさっていますか?

•英語でのコミュニケーション,へっちゃらですか?

7

Page 8: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

mruby とは?

8

Page 9: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyとは?

Apr 23,2013QCon Tokyo 2013

mruby とは?

• Embeddable

•Minimal Implementation

• Considerable active committers have “M” as their name initials, somehow.

• Some major committers have Matsumoto as their family name, somehow. (note: They are not relatives)

•Matz

https://github.com/mruby/mruby/wiki/FAQ-%28General-Topic%29

9

Page 10: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyとは?

Apr 23,2013QCon Tokyo 2013

“組込み”の2つの意味

10

Page 11: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyとは?

Apr 23,2013QCon Tokyo 2013

mrubyが意味する組込み

• TOPPERS → 機器組込みにしか使いません.

• VBA → アプリケーションの拡張にしか使いません.

•mruby → 両方で使えます.11

Page 12: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

mrubyにできること

12

Page 13: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

Ruby言語の実行

• Rubyスクリプト

• C言語APIコール (e.g.ネイティブメソッドとのバインド)

• RITEバイトコード(事前コンパイル)

13

Page 14: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

RUBYスクリプトの実行

•mruby コマンドによるバッチ実行

•mirb コマンドによる対話的実行

mruby -e ‘p “Hello Ruby World”;’

> p "Hello Ruby World""Hello Ruby World" => "Hello Ruby World"

(15)

14

Page 15: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

MRB形式の実行p “Hello Ruby World” mrbc (コンパイラ)

RITE0009000000090000MATZ 000900000000007100010000 215300000071SC000100030004469F00000004008000060100003D008000A00000004A9C2200000001110010Hello Ruby World5849000000010001p324100000000

mrubyHello Ruby World

file: hello.rb

file: hello.mrb

stdout

15

Page 16: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

C配列形式MRBの実行p “Hello Ruby World” mrbc (コンパイラ)

const char hello[] = {0x52,0x49,0x54,0x45,0x30,0x30,0x30,0x39,0x30,0x30,0x30,0x30,0x30,0x30,0x30,0x39,0x30,0x30,0x30,0x30,0x4d,0x41,0x54,0x5a,0x20,0x20,0x20,0x20,0x30,0x30,0x30,0x39,0x30,0x30,0x30,0x30,0x00,0x00,0x00,0x80,0x00,0x01,0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xcb,0x22,0x00,0x00,0x00,0x42,0x53,0x43,0x00,0x01,0x00,0x03,0x00,0x02,0x46,0x9f,0x00,0x00,0x00,0x04,0x00,0x80,0x00,0x06,0x01,0x00,0x00,0x3d,0x00,0x80,0x00,0xa0,0x00,0x00,0x00,0x4a,0x9c,0x22,0x00,0x00,0x00,0x01,0x11,0x00,0x10,0x48,0x65,0x6c,0x6c,0x6f,0x20,0x52,0x75,0x62,0x79,0x20,0x57,0x6f,0x72,0x6c,0x64,0x58,0x49,0x00,0x00,0x00,0x01,0x00,0x01,0x70,0x32,0x41,0x00,0x00,0x00,0x00,

};バイナリ

Hello Ruby World

file: hello.rb

file: hello.cstdout

Cコンパイラ

libmruby.aVM呼出コード

file: main.c

16

Page 17: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

(詳しい方への情報)

• cdump(C言語APIを呼び出す関数のソースコード)形式の出力はサポートされなくなりました.

•デバッガサポートなどが困難なため

• RITEバイトコードがバイナリ形式になりました.

•今年に入ってからの,できごとです.

17

Page 18: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrubyスクリプトの埋め込み方

•【Q】良いサンプルはありませんか

18

Page 19: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrubyスクリプトの埋め込み方

•【A】mruby のツール自身がサンプルです.

•言い換えると,mruby(の一部)はmrubyで記述されています.

19

Page 20: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrubyの記述言語はmruby

mrubyコア(C言語)

Cコンパイラ

mrbc(mrubyコンパイラ)

First step: mrbcの生成

libmruby_core.a

mrbc.c(C言語API)

Cコンパイラ

mrubyコア(C言語)

mrubyコア(C言語API)

20

Page 21: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrubyの記述言語はmrubySecond step: libmruby.a の作成

mrblib(mruby)

mrbc

C言語形式mrb

Cコンパイラ

オブジェクト

libmruby.a

libmruby_core.a

アーカイバ

mrblib(mruby)

mrblib(mruby)

21

Page 22: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrubyの記述言語はmrubyThird step: mirb, mruby の作成

Cコンパイラ mruby

libmruby.a

mruby.c(C言語API)

mirb.c(C言語API)

Cコンパイラ mirb

22

Page 23: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

記述言語がmrubyなので

• Ruby で書けば,mruby の拡張ができます.

•効率や複雑な機能が必要なら,C言語での記述も可

•mruby の品質は,mruby のツールが動くことで実証されます.

•mruby の構成は,かなり柔軟に変えられます.

[ある程度は]

[ある程度は]

23

Page 24: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

Configurable/Pluggable

•必要な機能は,削れます.

•標準入出力,時間,正規表現,などなど

•いくつかの機能は,差し替えができます.

•例) Pluggable Regexp : 正規表現ライブラリの差替え口

24

Page 25: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mrbgems

•機能のパッケージ化

• Ruby の gems に類似.

•相違点は静的コンフィギュレーションであること

•小規模の機器組込み分野では,非常に好ましい

•アプリ組込み分野では…(DLL化など要る…かも)

25

Page 26: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

mruby にできること

•既存システムへの組込み

•環境は単一の構造体 == 複数の実行環境を持てる.

•小規模環境への対応

• 1MB以下のメモリ専有量

•OSが提供する機能からの独立

26

Page 27: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできること

Apr 23,2013QCon Tokyo 2013

緩やかなOSSライセンス

•MITライセンス

•OSSライセンスの中では最も緩い部類

• JavaやCRubyが採用しているライセンスは,組込み製品に採用しづらい.

27

Page 28: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

互換性確保の問題

• CRubyと微妙に互換性がない

•ライブラリが決定的に少ない

• ISO Ruby とも微妙に互換性がない

•文書化が後れていて,Matz に聞かないと判らない

28

Page 29: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

バイトコード周り

•バイトコードは,容量削減目的でしかない

• “Write Once Run Anyware” ではない

•セキュリティについては考慮されていない

•バイトコードに関しては,組込みJavaの競合ではない.

(30)

29

Page 30: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

デバッガ

•三昔前のBASIC並み

•コールスタックのダンプすらできない.(hack はある)

•バイトコードにデバッグ情報が無い

遠くない将来に解決(たぶん)

30

Page 31: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

(機器組込み屋から見ると)

31

Page 32: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

(機器組込み屋から見ると)

•テストスイートはある → テストケース不足

•特にカバレッジ率が高くない

• C言語コードの異常系処理に不安が残る

•いわゆる”天才が書いたコード”が若干残存

•コンパイラのwarningを殲滅できていない

32

Page 33: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

(機器組込み屋から見ると)

• 2013年2月13日

•おそらくint16_t の-1 を uint16_t にキャストした.

https://twitter.com/paselanpatlin/status/301590756668366848/photo/1

33

Page 34: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

(機器組込み屋から見ると)

•mrubyを警告厳しくしてコンパイルすると…CC src/compar.c -> build/host/src/compar.oCC src/crc.c -> build/host/src/crc.oCC src/dump.c -> build/host/src/dump.osrc/dump.c: In function ‘mrb_write_irep’:src/dump.c:685: warning: comparison between signed and unsignedsrc/dump.c:691: warning: comparison between signed and unsignedsrc/dump.c: In function ‘mrb_dump_irep’:src/dump.c:714: warning: comparison between signed and unsignedsrc/dump.c:720: warning: comparison between signed and unsignedsrc/dump.c: In function ‘mrb_bdump_irep’:src/dump.c:745: warning: comparison between signed and unsignedsrc/dump.c:749: warning: comparison between signed and unsignedCC src/enum.c -> build/host/src/enum.oCC src/error.c -> build/host/src/error.oCC src/etc.c -> build/host/src/etc.oCC src/gc.c -> build/host/src/gc.osrc/gc.c: In function ‘mrb_obj_alloc’:

電光掲示板を笑えない

34

Page 35: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyにできていないこと

Apr 23,2013QCon Tokyo 2013

対策 : テストケース拡充中

• ISO Ruby 準拠テストの拡充

•機器組込み適用を重点にしている fork の登場

• http://support.monami-ya.com/mruby/

• C言語APIのユニットテストを重点的に行う

35

Page 36: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

mrubyの開発体制

36

Page 37: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

githubによるホスティング

•本家は http://github.com/mruby/mruby/ に存在

•まつもとゆきひろ (Matz)氏が管理

•多数の fork が存在

•主に,本家へのコントリビュート目的

37

Page 38: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

githubとは?

• git を用いた開発を支援するサービス

•リポジトリストレージ,バグ追跡支援などの提供

•オープンソース製品の開発目的なら無償

•差分を投げ合う際の支援機能 (pull request)

38

Page 39: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

コミュニケーション言語

• Basically, English ...

39

Page 40: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

開発者間の連絡手段

•連絡手段は github で閉じている

• pull request と issue track を利用

•メーリングリストは無い

•効率的 ⇔ 雑談や愚痴は不能

40

Page 41: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

開発者間の連絡手段

•稀に,Twitter を使ったやりとりも...

...日本語(安堵)

41

Page 42: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

バージョン1.0はいつ出るの?

• github 版には,安定版の概念は(今のところ)無い

•サグラダ・ファミリア,賽の河原

(C)Wikipedia

安定版が出なけれ

ビジネスでは使え

ない!

42

Page 43: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

バージョン1.0はいつ出るの?

•「ビジネス方面のことは,NPOに任せる (意訳)」「github版は突っ走る(意訳)」

• “mrubyの夕べ”セミナーにて (2013年1月28日)

43

Page 44: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

安定版は本家以外に期待

•NPO法人 軽量Rubyフォーラム

•製品バンドルのソースコード

•各種 fork プロジェクト

44

Page 45: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

mrubyの開発体制

Apr 23,2013QCon Tokyo 2013

github版からのスピンオフ

• IIJ版 - ネットワーク系に強み http://github.com/iij/mruby/

•mruby-android - chipKIT Max32 (PIC32)への移植http://github.com/kyab/mruby-andorid/

•mruby-jit - JITコンパイラ.3~5倍の高速化.https://github.com/miura1729/mruby/

その他,書ききれないほど45

Page 46: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

まとめ

46

Page 47: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

まとめ

Apr 23,2013QCon Tokyo 2013

結局,使えるの?

•不満は,あります.言っていてはキリがありません.

•組込み製品にすぐ採用するのは,ちょっと不安かな…

(IIJさんくらいの技術力があれば話は別)

•私見: 導入を検討するレベルには到達しています.

47

Page 48: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

Feb 21,2013軽量ruby実践レポート&セミナー

USE MRUBY NOW !

48

Page 49: mruby の今 そして目指すもの - QCon Tokyo 2016 ...qcontokyo.com/tokyo-2013/data_2013/MasakiMuranaka_QConTokyo… · mrubyにできること QCon Tokyo 2013 2013 記述言語がmrubyなので

まとめ

Apr 23,2013QCon Tokyo 2013

COPYRIGHT NOTICE

•本プレゼンテーションに含まれる各製品名は,各社の商標または登録商標です.

•本プレゼンシートには,http://honya.nyanta.jp/ で配布している「ほにゃ字」を使っています.

49