Lisp Scheme Part28
■ このスレッドは過去ログ倉庫に格納されています
0659デフォルトの名無しさん
2009/12/07(月) 22:36:21(define (match kws pat expr)
(define (kwd? p)
(member p kws))
(let loop ((pat pat)
(expr expr)
(res '()))
(cond
((and (pair? pat) (pair? expr))
(let ((res* (loop (car pat) (car expr) res)))
(and res* (loop (cdr pat) (cdr expr) res*))))
((kwd? pat)
(cons (list pat expr) res))
((eqv? pat expr)
res)
(else #f))))
■ このスレッドは過去ログ倉庫に格納されています