2007/07/09

Common Lisp ステップ実行、オプティマイズ宣言

Common Lisp にはステップ実行を行う step というマクロがあります。
言語仕様にステップ実行が含まれるなんて、さすが Common Lisp です。

SBCL で step 実行を行うには、debug が > (max speed space compilation-speed) となるようなオプティマイズ宣言を行う必要があります。
次のように declaim でグローバルに宣言をしておくとよいかもしれません。


;;デバッグ用セッティング
(declaim (optimize (debug 3) (safety 3)
(speed 0) (space 0) (compilation-speed 0)))

ステップ実行するには

(step (foo 3))

のようにします。

0 件のコメント: