On Fri, Sep 25, 2020 at 1:47 PM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:

I am not sure whether the term "native implementation" is
well-defined.

By that I mean that it is not built on top of any other implementation.
 
I will answer with an example. Consider the question of whether "1 is
a prime number". Even though it is a question about how to define a
concept, there is only one legitimate sane answer. Although I may use
reasoning to explain the correct answer, the truth of the answer is
independent of any reasoning, let alone of any voting.

Without doubt.
 
Not all questions are like this one, of course.

Indeed.  And the questions "What belongs in this SRFI?" and "What goes into R7RS-large?" are very much unlike "Is 1 prime?"  They are much more like "What are the boundaries of country X?", which is a matter of fact until it is not.

That said, I can fill in specifications but these will probably (have
to) make choices, which I am currently evading (especially in the case
of ER macros).

You will have to, I think.
 
I would rather want to find a substitute for the (srfi 211 r4rs)
library name, which I just chose for the lack of a better name. Maybe,
(srfi 211 low-level) is already a better name.

That makes sense to me.
 
I won't rename (srfi
211 syntax-case) to (srfi 211 r6rs) for another reason: The R6RS macro
procedures/syntax are split into several sublibraries here because
identifier syntax or variable transformers are completely orthogonal
to syntax-case and apply (when present) equally well to all the other
macro systems.

Clear.
 
I am slightly at a loss here. Aren't we doing exactly this by trying
to find some common denominator?

Yes.  However, sometimes providing the common elements only is too underspecified.

PPS We have almost only talked about the implementations but the users
matter at least as much. Given the scope of R7RS (large), high-quality
implementations will matter more than toy implementations.

That's true.  But I am constrained by my position as chair of R7RS-large from having public views on which implementations are high-quality and which are toys.

  (I doubt anyone wants to write applied macros like these
with er-macro-transformer.)

 I certainly would not.  But then I don't want to write low-level macros at all.  If I were writing a multipass compiler like that, I'd do it at the runtime level.



John Cowan          http://vrici.lojban.org/~cowan        xxxxxx@ccil.org
C'est la` pourtant que se livre le sens du dire, de ce que, s'y conjuguant
le nyania qui bruit des sexes en compagnie, il supplee a ce qu'entre eux,
de rapport nyait pas.               --Jacques Lacan, "L'Etourdit"