more comments Peter McGoron (17 Aug 2025 00:39 UTC)
Re: more comments Wang Zheng (27 Aug 2025 12:27 UTC)
Re: more comments Peter McGoron (30 Aug 2025 13:56 UTC)
Re: more comments Wang Zheng (31 Aug 2025 02:50 UTC)
Re: more comments Alex Shinn (28 Aug 2025 02:30 UTC)

more comments Peter McGoron 17 Aug 2025 00:33 UTC

* I think the plural of "nan" is "nans", so SRFI-208 should be "nans".

* SRFI-106 should be included as "sockets", because even though it is
not portably implementable, because it exports identifiers in a library.

* SRFI-114 should be included as "timers", because only its reference
implementation depends on a withdrawn SRFI.

* Under the subsection "Reserved, Restricted and Equivalent SRFI
Reference", the reference to SRFI-91 should be SRFI-97.

* Are (srfi :1) and (srfi srfi-1) the same library? If an SRFI has
global state, would changes to that state be reflected in both libraries?

* Is this library only for R6RS systems? If it includes R7RS systems (I
think it should), it should also include `(srfi <uinteger-10> ...)` as
equivalent to the other library references for R7RS systems. I would
also include it because some SRFIs use the R7RS convention in their text
when referring to sublibraries (for example, SRFI-146).

Incorporating the above, I would rewrite the specification section to be
more clearer like the below. This is how I understand the SRFI.

     All library references starting with the following are equivalent,
     in the sense that changing the start of the reference with another
     one of the sequences here will still refer to the same library:

         srfi srfi-<uinteger-10>
         srfi <identifier>-<uinteger-10>
         srfi <uinteger-10>

     where the <identifier> is the name given for the specified SRFI
     number in the table below, and <uinteger-10> is an SRFI number.
     <identifier> and <uinteger-10> are defined in R6RS Chapter 4
     Lexical syntax (for R7RS systems, Chapter 7.1.1, Lexical structure).

     For SRFIs with numbers less than 261, the following are also
     equivalent libraries:

         srfi :<uinteger-10>
         srfi :<uinteger-10> <identifier>

     where the <identifier> and <uinteger-10> are defined the same as in
     the previous paragraph.

     If an SRFI does not specify any library, then its identifiers are
     exported by (srfi srfi-<uinteger-10>).

     An implementation is not required to support all of the above
     references. However, if an implementation exports a library with
     a name matching the above, it must follow this specification.

     For example, on an R7RS system, the following are equivalent:

         (srfi 1)
         (srfi :1)
         (srfi :1 lists)
         (srfi srfi-1)
         (srfi lists-1)

     For example, on an R6RS system, the following are equivalent:

         (srfi srfi-146 hash)
         (srfi mappings-146 hash)
         (srfi :146 hash)
         (srfi :146 mappings hash)

-- Peter McGoron