ffi

lispとrubyとpythonと その4 Cライブラリの呼び出し(python) の追記

lispとrubyとpythonと その4 Cライブラリの呼び出し(python) - テンポラリにfgshunさんからコメントをもらったので試してみた。 呼び出しているcライブラリはこんどもlispとrubyとpythonと その4 Cライブラリの呼び出し(lisp) - テンポラリと同じもの。呼…

lispとrubyとpythonと その4 Cライブラリの呼び出し(まとめ)

それぞれの言語でCと連携してみたまとめ、というか感想というか。 lispもRubyもPythonも呼び出し自体はわりと簡単。 ちゃんと動くかどうかは別として・・・。 一番すんなり理解できたのはSBCLだったような気がする。 Rubyの「拡張ライブラリをCで書く」って…

lispとrubyとpythonと その4 Cライブラリの呼び出し(python)

最後はpython。 Cとの連携方法はいくつかあるみたい(boost.pythonとかswingとか)あるみたいなんだけど、ctypesを使用。 呼び出しているcライブラリはlispとrubyとpythonと その4 Cライブラリの呼び出し(lisp) - テンポラリと同じ。 参考は、まぁここ。 ht…

lispとrubyとpythonと その4 Cライブラリの呼び出し(ruby)

つぎはruby。 rubyだとCライブラリを呼び出すというよりはrubyのクラスをCで書く感じ。 ruby1.9でためしたんだけど、1.9では RSTRING(xxx).ptr とか RSTRING(xxx).len ではなくて RSTRING_LEN(xxx) RSTRING_PTR(xxx) と書くみたい。参考はこのへん。 http://…

lispとrubyとpythonと その4 Cライブラリの呼び出し(lisp)

今回はCライブラリの呼び出し。 SBCL限定なので注意。 sb-alienにCを呼び出すために必要なもろもろが入ってる。 一応動いてるんだけど、これであってんのかなぁ。 C側でmallocした時とか、GCのコンパクションでまずいことになったりしないんだろうか・・・。…