Reader syntax and general reasoning Antero Mejr (25 Jan 2025 22:41 UTC)
Re: Reader syntax and general reasoning Wolfgang Corcoran-Mathe (26 Jan 2025 18:35 UTC)
Re: Reader syntax and general reasoning Marc Nieper-Wißkirchen (26 Jan 2025 18:53 UTC)
Re: Reader syntax and general reasoning Daphne Preston-Kendal (26 Jan 2025 19:11 UTC)
Re: Reader syntax and general reasoning Marc Nieper-Wißkirchen (26 Jan 2025 19:27 UTC)

Re: Reader syntax and general reasoning Wolfgang Corcoran-Mathe 26 Jan 2025 18:35 UTC

Hi Antero,

On 2025-01-25 17:41 -0500, Antero Mejr wrote:
> Is there an intended use case that necessitates the inclusion for the
> :|| syntax? The SRFI says that most implementations do not offer a
> syntax. I think ":||" will be a bit annoying to implement in a reader:
> it isn't prefixed by "#", and ":" is a valid character in identifiers.

Uninterned symbols must have a datum notation if they're to be usable
with datum->syntax. That's necessary, I believe, to implement the kind
of macros Daphne discusses in her message (at least, in the way she
implements them).

The "# lexical namespace" is already heavily used in Scheme, and it's
hard to find a #...  notation for uninterned symbols that is not
already used for something else. I'd be happy to hear suggestions for
alternatives.

(Your comment also reminds me to study the R7RS grammar again to see
if SRFI 258 requires a change to the <identifier> production.)

> I would also like to echo John/Shiro/Marc's concerns, and add another
> comment: why would uninterned symbols need to be specified across
> implementations as a standardized SRFI?

As I think the Prior Art section of the SRFI shows, while many Schemes
provide uninterned symbols, it's extremely difficult to write portable
code using them. The rationale for SRFI 258 is thus the same as it is
for any SRFI describing a non-portable feature: if the feature is worth
having and current implementations are inconsistent, then it's worth
standardizing.

--
Wolfgang Corcoran-Mathe  <xxxxxx@sigwinch.xyz>