* Menu
[[About:self:AboutPage.txt]] | [[Profile:file/southly/]] | [[まとめ:self:1163859357.txt]] | [[オリジナル:http://ninjinix.x0.com/rn/]] | [[xyzzy:lisp/]] | [[あんてな:listall]] | [[■:lisp]] | [[buzz:files/southly#buzz]]
* memo : 暫定まとめ
自分が置いているCL系の情報にアクセスしやすいよう、もう一つ上の階層にページを作る予定なのだけれど、とりあえず列挙。
* memo : MacPorts で SBCL をインストール
ソースを消されないようにキープモードでインストールする。
upgrade の時は注意。
$ sudo port -k install sbcl
upgrade の時は注意。
* memo : xyzzy lisp FFI
いつかちゃんとまとめたい。
- 基本
- データ型関連
- int -> c:int, double -> c:double, ...
- ポインタ型は「(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 関数の戻り値
- NAME 関数名
- ARGS 関数の引数
- DLL-NAME DLLのパス
- EXPORT-NAME Cの関数名 (DLLでexportされているもの)
- データのやり取りは chunk を介する
- C から呼べる関数(callback関数)を作る関連
- c:defun-c-callable で作る
- c:defun-c-callable RETURN-TYPE NAME (&rest ARGS) &body BODY
- RETURN-TYPE 関数の戻り値の型
- NAME 関数名
- ARGS 関数の引数
- BODY 関数の定義
- データのやり取りは chunk を介する、ということで同上
- 注意点
- 下手をすると簡単に xyzzy が落ちることを頭に入れておく
- gc に注意する
- gc で回収されないオブジェクトを作らない
- C の関数が動いているときに chunk が gc されないように気をつける
- ポインタ型は全部「void *」とみなしても問題ない
- 「void *」は「unsigned long (32bit unsigned integer)」と等価として扱うこともできる
- xyzzy の未実装やバグにも注意
- その他、外部とのやり取り
- dde
- ole
* 2008-03-24 :
- なにやら懐かしいものが。
- http://d.hatena.ne.jp/tamago_girai/20080323#p1
- ついでにソースのありかも示しておきましょう→lisp/play-turtle.lzh
- winapiというかお絵かきですけどね。この手のお絵かきならXyzzyWikiのtrash辺りにいくつかありますね。
- winapiでというかWindowを作るやつでちゃんとしたのというとkimuraさんの[[SPI on xyzzy:junk.html#SpiOnXyzzy]]が思い当たります。
- [[popwindow.l:xyzzy.s53.xrea.com/wiki/index.php?Memo%2Fdictionary]]なんてものも作られました。
* memo : apacheの設定メモ
userdirを使えるようにするために毎回調べているのでメモ。
cgiやら.httacessやらを許可するためにuserdir.confの方を書き換える。
面倒なので両方Allで。
参考: http://x68000.q-e-d.net/~68user/webcgi/server-config.html
cd /etc/apache2/mods-enabled/ ln -s ../mods-available/userdir.conf . ln -s ../mods-available/userdir.load .
cgiやら.httacessやらを許可するためにuserdir.confの方を書き換える。
面倒なので両方Allで。
<IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> AllowOverride All Options All </Directory> </IfModule>
参考: http://x68000.q-e-d.net/~68user/webcgi/server-config.html