Adding tests for R7RS macro extensions (... <template>) and

overriding the ellipsis.  Patch from Per Bothner.
This commit is contained in:
Alex Shinn 2014-09-03 07:11:48 +09:00
parent fe07176a8a
commit 1857b80bc8

View file

@ -409,15 +409,35 @@
(if y) (if y)
y)))) y))))
(define-syntax be-like-begin (define-syntax be-like-begin1
(syntax-rules () (syntax-rules ()
((be-like-begin name) ((be-like-begin1 name)
(define-syntax name (define-syntax name
(syntax-rules () (syntax-rules ()
((name expr (... ...)) ((name expr (... ...))
(begin expr (... ...)))))))) (begin expr (... ...))))))))
(be-like-begin sequence) (be-like-begin1 sequence1)
(test 4 (sequence 1 2 3 4)) (test 3 (sequence1 0 1 2 3))
(define-syntax be-like-begin2
(syntax-rules ()
((be-like-begin2 name)
(define-syntax name
(... (syntax-rules ()
((name expr ...)
(begin expr ...))))))))
(be-like-begin1 sequence2)
(test 4 (sequence2 1 2 3 4))
(define-syntax be-like-begin3
(syntax-rules ()
((be-like-begin3 name)
(define-syntax name
(syntax-rules dots ()
((name expr dots)
(begin expr dots)))))))
(be-like-begin3 sequence3)
(test 5 (sequence3 2 3 4 5))
(define-syntax jabberwocky (define-syntax jabberwocky
(syntax-rules () (syntax-rules ()