http://sources.redhat.com/libffi/を用いた Foreign Function Interfaceを
実装してみたので公開します
http://acc-physics.kek.jp/SAD/SADrelease/distfiles/FFICall-Rev.1.tar.gz
Size: 5530 bytes
Date: 2008-03-08 20:09:36 JST
Checksum:
SHA256: b8a44e984456e5c9582f276891c1dd44a176949a299b6c43757540be25d252df
SHA1: 2ddc427c0e1cc82be65f8541e0c9bcf5310c1a9f
MD5: ede790cfab7c45b7f98f80ca7ab0f53d
適切なプロトタイプを与えることで、SADScriptから外部の関数を直接呼び出せます
例えば、printf("FFI test calling printf(%d,%5.2f,%c)\n", 10, 2.1, 43)を呼び出して
その返り値を受け取る例
FFICall[DYNL$LOCAL, "printf", "int", {"char*", "int", "double","char"},
"FFI test calling printf(%d,%5.2f,%c)\n", 10, 2.1, 43]