Gauche
これの続き>http://d.hatena.ne.jp/nishiohirokazu/20080319/1205923818 gosh> (define-syntax chain (syntax-rules () ((chain arg func) (func arg)) ((chain arg func ...) (chain (func arg) ...)))) #<undef> gosh> (macroexpand '(chain 1 inc inc inc)) (((</undef>…
Gaucheいれた。 gosh> (define-syntax bar (syntax-rules () ((bar x y z) (if x y z)))) #<undef> gosh> bar #<macro bar> gosh> (bar (p #t) (p 1) (p 2)) #t 1 1 ふむふむ。 gosh> (define-syntax (chain (syntax-rules () ((chain x ()) x) ((chain x y)(chain ((car y) x)</macro></undef>…