mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-21 06:39:17 +02:00
Adding tests for R7RS macro extensions (... <template>) and
overriding the ellipsis. Patch from Per Bothner.
This commit is contained in:
parent
fe07176a8a
commit
1857b80bc8
1 changed files with 24 additions and 4 deletions
|
@ -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 ()
|
||||||
|
|
Loading…
Add table
Reference in a new issue