What about nested ellipsis?
Amirouche 02 Dec 2021 11:29 UTC
Something I stumble upon frequently is the following kind pattern
(match '(let ((a0 b0) (a1 b1) (a2 b2)) e0 e1 e2)
(`(let ((,a* ,b*) ...) e* ...) (do a* b* e*)))
Another pattern, I do not recall where I saw this, I think it is
in nanopass compiler from Andy Keep scheme-to-c, the pattern
looks like:
`(((a* b*) ...) ...)
An example argument expression is
'(((a0 b0) (a1 b1)) ((x0 y0) (x1 y1))))
Then the pattern match yields:
a* => a0 a1 x0 x1
b* => b0 b1 y0 y1
Do you think it is useful?
ref: http://nanopass.org/
ref: https://github.com/akeep/scheme-to-c
ref: https://srfi.schemers.org/srfi-200/
ref: https://srfi.schemers.org/srfi-204/