2011-03-14 71 views
1

我想改写这个:方案:定义语法规则的模式匹配语法

(define-syntax match-rewriter 
    (syntax-rules() 
    ((_ (patt body) ...) 
     (λ (x) (match x (patt body) ... (_ x)))))) 

使用(定义语法规则的图案模板),但我似乎无法得到正确的语法。任何建议表示赞赏。

谢谢。

回答

1

尝试:

(define-syntax-rule (match-rewriter (patt body) ...) 
    (lambda (x) (match x (patt body) ... (_ x)))) 
+0

谢谢!这几乎就是我正在使用的内容,但现在我发现我有一对额外的圆括号抛弃了这种模式。 – Schemer 2011-03-14 00:45:31