ひわだです。

From: Masaki Fukushima <fukusima / goto.info.waseda.ac.jp>
Subject: [ruby-ext:00815] Re: C++ の拡張ライブラリ (Re: OpenInventor なんてありますか ?)
Date: Tue, 04 Jan 2000 13:38:27 +0900

> 福嶋です。

> > swigruby良いですよねえ。今回開発した(してもらった)ものの中で
> > もトップクラスです。あ、erubyやmod_rubyも結構良いな。
> > 福嶋さん、ありがとう。謝礼はきちんとします。
> 
> いや、まだドキュメントが…

swigruby というより SWIG 自体を把握するのがやや面倒に感じてます。とり
あえず僕も使うだけなら簡単に使えてますケド、こんなに簡単でホンとに大丈
夫なのかも心配…。(中身を全然理解していないらしい…<俺)

> ちなみに、swigruby で C++ のラッパーを生成する時には以下の点を考
> 慮しています。

幾つか swigruby にほしいものがあるので少し書きます。一方的に要望を…と
いうのではなく、御知恵を拝借というつもりなのですが…。

1. FILE* の typemap がほしい…

  Ruby の OpenFile?とどう対応づけるのがいいのかがちょっと…。typedef で
  FILE* を FILE_READ* とか FILE_WRITE* とかにしちゃえばいいのかとか思っ
  てますが、どうするのが良いのやら…。swigruby 標準があるとうれしい?。

2. class を作ったときに %typemap(ruby,ignore), %typemap(ruby,argout) 
   をいちいち設定するのが面倒。いつも同じなのに…

  複数の戻り値を扱えるのがとても便利なのですが、これってデフォルトの挙
  動を設定できないのでしょうか…。説明書を読めよというかんじですが知っ
  てたら教えてください。

3. string とかもあるとうれしい…。iostream …は無理か?

  こういうのは ruby-ext とかでよってたかって作ればいいんですかね。
  iostream はこの際 ruby 自体に手を入れてでも…ていうのは行きすぎ?。

4. vector<T> とかのサンプルが欲しい

  each さえ定義してしまえばあとは Enumerable を include するだけでかな
  り使えそうだとは思うんですが…。サンプルがもしあったらうれしい…。体
  系的 STL を swigruby できたりすると凄くうれしいかも……

#うう、なんかやっぱりすごく他力本願だ… __;

下の方は無視して 1, 2 あたりなにかありましたら教えてください ^^;。


#「Ruby は拡張ライブラリが他より作りやすくて良い」とか思ってたんです
が甘かったかな。Conservative な GC の利点とかは SWIG を前提にしても残
るんでしょうか…。うーむ、なんかいろいろ考えを改めないとだめなのかも。
-- 
檜田和浩 <hiwada / kuee.kyoto-u.ac.jp>