2014-03-10 iOS用にmrubyをビルドしてみる iOS 7 mruby mrubyとは mrubyは組み込み用の軽量なRuby実装、らしいです。軽量だから全部小文字なんでしょうか? CEDEC2011での講演でゲームでも使える様な軽量なRubyを開発中です、という話を聞いて以来興味を持ってちょくちょく追っていましたがどうやら先月1.0.0がリリースされたようです。 -> 開発者を幸せにするプログラミング言語Rubyの思想【CEDEC 2011】 - ファミ通.com公式サイト -> http://www.mruby.orgGitHub -> https://github.com/mruby/mrubyGitHubのWikiにもまだ詳細なドキュメントはありませんが、探せば日本語の情報がぼちぼち出てくる状態です。手探りでiOS用にビルドしてiPhone 5sで実行するまで
2012-05-30 (鈴) 1. はじめに 2. jni ディレクトリとAndroid.mk 3.Ruby からJava へのコールバックと mruby.h へのパッチ 4.Java からRuby へのネイティブ・メソッド呼出し 5.Android アクティビティからのインタープリタの構築 6. おわりに Web 閲覧用ソース:AndroidManifest.xml jni/Android.mk jni/mruby-oa.c native メソッドとRuby からのコールバック関数の実装 jni/mruby.h.diff jni/mruby/include/mruby.h へのパッチ src/…/AbstractConsole.java 抽象化されたコンソール src/…/Interpreter.java mruby インタープリタのラッパ src/…/android/C
<< 2013/07/ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 1. mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方 >> _ mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方Twitterで質問を受けたので、 mrubyのmrb_gc_arena_save()/mrb_gc_arena_restore()の使い方 という解説を行った。が、1つ140文字のTwitterでの解説にはどうしても無理があるので、 こっちでまとめることにする。 まずは、Twitterの発言*1はこんな感じ。 arenaの目的。利用中のオブジェクトはGCに回収されないよう保護

人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 ある人「あなたのやりたいことはなんですか?」 僕「複数あるWebサーバソフトウェアの拡張記述を統一したいです」 ある人「(それはさすがに無理だろ…)」 という感じで始まったmod_mrubyやngx_mrubyの開発ですが、今ではそれも夢では無い所まできています。当時は「mod_mrubyを作ってみようか」という記事からmod_mrubyの開発ははじまりました。 朧げにあったアイデアでは、「どうやって統一するのか?どんな言語にするのか?どうやって組み込むのか?え?そもそもそんな事無理では?」という感じでしたが、1年前に運良くmrubyがGitHubで公開されて以来、色々なアイデアのピースがはまっていき、いつの間にかそのアイデアが形になろうとし

人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 ApacheCon NA 2013に参加し、早めにポートランド国際空港に到着しました。時間があるので、今日(2013年3月2日)からmrubyを始める人へ簡単なチュートリアルをしようと思います。 mrubyというプロジェクト mrubyとは、組み込み機器やアプリ組み込みに最適化された軽量スクリプト言語です。記述方法は既存のRubyのように書くことができます。C言語で書かれたホストアプリにmrubyを組み込むことで、ホストアプリをRubyの記述でコントロールすることができます。例えばmod_mrubyは、RubyでApacheAPIをつつけるようにmrubyをApacheに組み込むためのモジュールで、ApacheモジュールをRubyで記述する

やっつけで適当に書いてみた。yuroyoro/rmruby ·GitHub 一体何がしたいのか……。 irb(main):001:0> require 'rmruby' => true irb(main):002:0> Rmruby.eval('3.times do |n| puts "hello #{n}!" end') hello 0! hello 1! hello 2! 3 => nil 毎回mrbインスタンス作ったりコンテキスト使い捨てしたりしてるし、mrubyからの返り値やコンテキスト内の変数にはruby側からはアクセスできないのだけど、あんまり真面目に作ってないのでカンベン汁( ꒪⌓꒪)
まつもとりー / Ryosuke Matsumoto @matsumotory さてmod_mrubyに復帰しようと思って早速コンパイルしてみたら、mrb_code *pc = irep->iseq;でmod_mrubyがsegfaultおこすようになってるな。 2012-09-03 10:24:55 まつもとりー / Ryosuke Matsumoto @matsumotory mod_mrubyここでこけるなぁ。 mrb_run (mrb=0xb57f8148, proc=0xb57fb01c, self=...) at vm.c:446 446 mrb_code *pc = irep->iseq; 2012-09-07 21:35:13

mruby は、Ruby の作者であるまつもとさんが開発されている「組込み向け軽量Ruby」の実装です。 詳しくはITPro の紹介記事などをご覧ください。 今回は、この mruby を EFI Shell 上で動かしてみました。 EFI と EFI Shell EFI もしくは UEFI とは、BIOS の置き換えのために Intel などが中心となって策定したファームウェアの仕様です。 最近のPC はほぼ UEFI 対応していますが、だからといって、すべてのもので EFI Shell が立ち上げられるとは限りません。 また、UEFI Boot 自体も、まだそれほど一般的ではないかもしれません。 ベンダによっては、UEFI なのに、UEFI Native Boot ではなく Legacy Boot させている (つまり CSM Boot させている) ところも多いようです。 ただし

この記事を書いている途中に@miura1729さんがmrubyにインラインメソッドキャッシュを実装したという発言が。 https://github.com/miura1729/mruby/commit/ed3ef94a4a50946dfe237c27d53375cc4e31ca84 インラインメソッドキャッシュというのは命令列の中にメソッド検索の結果を書き込んで、次の呼び出しはその情報を利用してメソッド検索を省くテクニックだ。Ruby1.9のVMにも実装されている。 ただ、Rubyではメソッドを動的に書き換えることができるため、インラインメソッドキャッシュの内容が古くなってしまうと使えない。その判定や更新についてはコードをざっと見た限りは実装されていないっぽいので、実際に取り込まれるまでにはもうちょっといじる必要があるだろう。 いつか可変長OP_SENDを実装したらインラインメソッドキャッ
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く