(module define-macro (define-macro) (import scheme (chicken base) (chicken syntax)) (define-syntax define-macro (er-macro-transformer (lambda (exp r c) (let ((def (cadr exp)) (body (cddr exp))) `(define-syntax ,(car def) (er-macro-transformer (lambda (e2 r2 c2) (define (transform-func ,@(cdr def)) ,@body) (apply transform-func (cdr e2))))))))))