SRFI 204 does support nested ellipses, see the second gray box here: https://srfi.schemers.org/srfi-204/srfi-204.html#Ellipsis

The Nanopass framework can be seen as a sophisticated type-safe version of SRFI 204 when the domain is a user-defined inductive data type.  I would like to see a version of the Nanopass destructor and constructor syntax as a SRFI (and may write it someday); a suitable version of it cannot be built on syntax-case alone; it will need SRFI 213 (identifier properties) as well.

Am Do., 2. Dez. 2021 um 12:29 Uhr schrieb Amirouche <xxxxxx@hyper.dev>:
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/