[トップ][一覧][最近の更新]

archives/2005/09/21

Scheme/Gauche/Gauche-lazy-ffi

Category of Scheme

なんちゃってffiのつくりかけ: files:Gauche-lazy-ffi-20050921.tar.gz

libffi

eggs:lazy-ffiみたいなのを目指したのだけど似ても似つかないものに。

  • 破壊的代入ができない(gethostname(3)みたいなのはアウト)
  • void*が表現できない

なところが偽物。

(define libm (lazy-ffi:open "libm.so.2.0"))
(lazy-ffi:function libm "sin" lazy:double 1.0)
=>0.8414709848078965

単にScmObjをlibffiに渡しているだけなので、 偽物から脱却するには、 自前のヒープとそれをやりとりするためのインターフェースを作成しないと駄目か。