More r6rs/guile Felix Thibault (27 Sep 2020 16:35 UTC)
Re: More r6rs/guile Lassi Kortela (27 Sep 2020 16:39 UTC)
Re: More r6rs/guile Felix Thibault (27 Sep 2020 16:53 UTC)
Re: More r6rs/guile Marc Nieper-Wißkirchen (27 Sep 2020 17:17 UTC)
R7RS conformance Lassi Kortela (27 Sep 2020 17:53 UTC)
Re: R7RS conformance Marc Nieper-Wißkirchen (27 Sep 2020 18:12 UTC)
Re: R7RS conformance John Cowan (27 Sep 2020 18:47 UTC)
Re: R7RS conformance Marc Nieper-Wißkirchen (27 Sep 2020 19:18 UTC)
Re: R7RS conformance John Cowan (27 Sep 2020 19:33 UTC)
Re: R7RS conformance Lassi Kortela (27 Sep 2020 19:47 UTC)
Re: R7RS conformance Marc Nieper-Wißkirchen (27 Sep 2020 19:53 UTC)
Re: R7RS conformance Lassi Kortela (27 Sep 2020 19:54 UTC)
Re: More r6rs/guile John Cowan (27 Sep 2020 19:32 UTC)
Re: More r6rs/guile Marc Nieper-Wißkirchen (27 Sep 2020 19:57 UTC)
Re: More r6rs/guile Felix Thibault (27 Sep 2020 22:30 UTC)

Re: R7RS conformance Lassi Kortela 27 Sep 2020 19:47 UTC

>>     For example, the hygienic definition of "cond-expand" in section 7.3
>>     in the R7RS (and the categorization of "cond-expand" as a hygienic
>>     derived form in section 4.2 is pointless because it amounts to
>>     hygienic matching of identifiers against library name part, meaning
>>     that the matching of the cond clause, say, (library (scheme read))
>>     will depend on the binding of the identifiers `library', `scheme', and
>>     `read'. Therefore, I took liberties in Unsyntax to do the matching in
>>     cond-clauses by symbol equality. Strictly speaking, this is an
>>     incompatibility with R7RS as written, but probably conforming to the
>>     intended meaning.

> That definition only applies to the cond-expand *macro*, not the
> cond-expand *library declaration*.  Macros cannot expand to libraries,
> so symbolic matching is the correct thing in any define-library form.
> Note also that the definition of cond-expand given does not correctly
> interact with (features).
>
> I personally dislike and avoid the cond-expand and include macros and
> always use the library declarations instead.

The two of you know a lot about the obscure corners of Scheme. If you
ever have the time and feel so inclined, feel free to add things to
<https://github.com/schemedoc/guides/blob/master/esoterica.adoc> :) That
document should be part of doc.scheme.org once we can get that site up.