タグ

ブックマーク / ksss9.hatenablog.com (3)

  • mrubyのmrubyバインディングmruby-mruby - スペクトラム

    追記: リポジトリ名を変えました。 https://github.com/ksss/mruby-research 名前は仮だけどmruby-mrubyというライブラリを書きはじめた。 https://github.com/ksss/mruby-mruby mrubyにとって得意なことの一つにCのAPIをいい感じの言語(すなわちRubyの文法)で呼び出せることがある。 カーネルのシステムコールを呼べばmruby-ioやmruby-processになり、 ApacheのC-APIを呼べばmod_mrubyになる。 他に何かいいC-APIを提供するライブラリは無いだろうかと思ったら灯台下暗し、なんだmrubyがあるじゃんということでmrubyのC-APIをmrubyで呼んでみたのがmruby-mrubyだ。 「それってただのmrubyじゃないの?」というのもその通り、ただのmrubyである。だが

    mrubyのmrubyバインディングmruby-mruby - スペクトラム
    kasumani
    kasumani 2014/06/01
    mrubyのmrubyバインディングmruby-mruby mrubyにとって得意なことの一つにCのAPIをいい感じの言語(すなわちRubyの文法)で呼び出せることがある。 Tags: feedly, ifttt, recently read, saved for later from Pocket June 01, 2014 at 01:54PM via IFTTT
  • 大江戸Ruby会議04で話さなかったこと - スペクトラム

    大江戸Ruby会議04で「mruby hacking guide」というタイトルで話した。 スライドはこちら。 https://speakerdeck.com/ksss/mruby-hacking-guide mrubyを開発する人、使う人が増えればいいなという狙いだったんだけど、うまくいっただろうか。 2014/02/04からAsakusa.rbに4回連続で行った。 5回は進捗ダメで行けなかったけど、次の日家に帰って大江戸Ruby会議の参加登録をしようと思った矢先に@a_matsudaさんから「大江戸Ruby会議04で話しませんか?」というDMが来ていた。 特になにも話さずもくもくしてただけだったので非常に驚いたけど「行きます」と即答した。 驚いたのはそれだけじゃない。話す内容について一切精査されなかったのも驚きだった。300人規模のイベントをやるのに何を話すのか伝えているのはタイトルだ

    大江戸Ruby会議04で話さなかったこと - スペクトラム
    kasumani
    kasumani 2014/04/21
    大江戸Ruby会議04で話さなかったこと mrubyを開発する人、使う人が増えればいいなという狙いだったんだけど、うまくいっただろうか。 2014/02/04からAsakusa. Tags: feedly, ifttt, recently read, saved for later from Pocket April 21, 2014 at 09:26PM via
  • mrubyを小さくしたり大きくしたりした話 - スペクトラム

    最近mrubyにコミットしているので自分の活動をまとめます。 mrubyを小さくした話 mrubyでは、文字列の扱いはシンプルにchar*を構造体でラップしていました。 struct RString { MRB_OBJECT_HEADER; mrb_int len; union { mrb_int capa; struct mrb_shared_string *shared; } aux; char *ptr; }; そのため1つの文字列毎に、構造体分と文字列分の2回のmalloc/freeが発生していました。 ここでCRubyのRStringを見てみます。 #define RSTRING_EMBED_LEN_MAX ((int)((sizeof(VALUE)*3)/sizeof(char)-1)) struct RString { struct RBasic basic; union {

    mrubyを小さくしたり大きくしたりした話 - スペクトラム
    kasumani
    kasumani 2014/03/17
    mrubyを小さくしたり大きくしたりした話 mrubyでは、文字列の扱いはシンプルにchar*を構造体でラップしていました。 そのため1つの文字列毎に、構造体分と文字列分の2回のmalloc/freeが発生していました。 Tags: from Pocket March 17, 2
  • 1