Scheme:define-syntax-rule模式匹配语法

时间:2011-03-14 00:36:10

标签: scheme syntax-error racket

我想改写一下:

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

使用(define-syntax-rule模板模板),但我似乎无法正确使用语法。任何建议都表示赞赏。

感谢。

1 个答案:

答案 0 :(得分:1)

尝试:

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