いつかちゃんとまとめたい。 基本 関連する関数・マクロの定義は $XYZZY/lisp/foreign.l foreign パッケージで定義 サンプルは $XYZZY/lisp/wip/ 以下 データ型関連 int -> c:int, double -> c:double, ... $XYZZY/lisp/foreign.l, $XYZZY/lisp/wip/winapi.l を参照 ポインタ型は「(c:char *)」というようなリストの形で表現 C の構造体は c:define-c-struct で定義 C の関数を呼ぶ関連 c:define-dll-entry で C 関数のインターフェースを作る c:define-dll-entry RETURN-TYPE NAME (&rest ARGS) DLL-NAME &optional EXPORT-NAME RETURN-TYPE 関数