Entries from 2006-12-31 to 1 day

smolder

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")) マクロ名の一致 マクロが下…