Am Mo., 22. Juli 2024 um 19:43 Uhr schrieb Lassi Kortela <la...@lassi.io>:

> > To correctly attach marks (in the R6RS syntax model) to the imported
> > identifiers, the expander needs marks associated with the library name
> > (and takes the marks of the last name part, which, therefore, must be an
> > identifier).
> Where does the decision to take the last library name part come from?
>
> Only Chez Scheme? Any other implementations? Does R6RS address this?
>

As I wrote, this is a syntactic extension of Chez Scheme - but a very
useful one - and outside of the R6RS.  The Unsyntax expander I wrote also
implements it.


> Why not take the first library name part instead of the last? In
> practice, a numeric last part is useful and is already widely used. It's
> far less likely for a numeric first part to be useful.
>

The last name part is the most specific one.  In any case, the decision was
made before R7RS existed, and, as I mentioned, the R7RS authors were likely
unaware of the incompatibility of their proposal to allow numeric name
parts with existing implementations and language extensions.

I don't buy that numeric library parts are particularly useful; they are
just one option. The SRFI 97 convention works as well as the SRFI-0
convention of "srfi-N" names, which is basically also used by Guile.

Reply via email to