Gauche:SWIG

Gauche:SWIG

hotiより

Shiro(2004/07/08 22:20:09 PDT): うーん、swigも何にでも使えるわけじゃなくて、 よっぽど単純な場合以外は結局手間がかかるのは一緒なんじゃないかという 印象があるんです。機械的に変換できる部分ってのは、よっぽどAPIが頻繁に 変わるライブラリでない場合、一回やれば十分な部分で。それよりよっぽど 難しいのが、Scheme界のポインタをCへ渡したい場合なんかで、これはswigは 面倒を見てくれない(と思う)ので、自分で書くことになる。そうすると、 swigみたいなツールが一段噛んでいることはむしろ邪魔じゃないか、 と思うわけです。でも反例は歓迎します。あったらそれなりに便利だとは思うし。

ということでshiroさんはあんまり乗り気じゃない SWIGサポートですが、 少なくともあって困るものではないでしょう。

とりあえずkouさんが やる気 を見せています。

以前にMLでも が出ていました。

で、どうしようかなーというページ。

議論

fuyuki: SWIGのことはよく知らないんですがページを起こした責任でネタ振りしておくと、 n割の問題を0労力で解決できるのは魅力的なんじゃないでしょうか。 と分かったようなことをいいつつCOZMIXNG:SWIG::Argumentsなどを眺めてみる。:)

Shiro: stubの自動生成に関しては私も肯定的です。現にGauche-gtkでやってるし。 7〜8割方のAPIは自動生成で済むでしょう。問題は残りの2〜3割で、そういうケースが ツールを使わない場合と同じように簡単に書けるならそれでいいんですが。 swigではtypemapとか色々サポートするしくみがあるみたいですけど、 直に手書きするより手間を増大させたくはないので。 でも私もswigを真剣に見てみたわけじゃないので、「ほら、こんなに簡単にできるよ」 って見せられたらころっと態度を変えると思います。

shelarcy: Boost.Python は Python 専用というわけでなくて、Boost.AnyLanguage を目指しているのでこれの Gauche port を作りたいというのが私の立場。フルスペックの C++ が書けるのが嬉しいこともあるので。……とはいっても、Gauche:Windows/MinGW が終わってからになりますが。

More ...