Entries from 2006-12-31 to 1 day
smolderはビルドが難しい。 そして裏で何が起こっているか分からない。
そろそろマクロの展開を考えよう。 とても簡単な例で妄想。 簡単な例 (define-syntax show (syntax-rules () ((_ a) (display a)))) (show "higepon") define-syntax の時点で、 syntax-rules はパースされて Node ツリーとなる。 "show" => [node-pattern1]…
単純なパターン - and - () - (_ a b) - (and 3 4) はマッチ OK のパターン。 導かれるのは以下2つ。 マクロ名の一致 Node数の一致 入れ子のマッチ - when - () - (_ pred a b) - (when (= x 3) (display "x=3") (display "\n")) マクロ名の一致 マクロが下…