istring? Marc Nieper-Wißkirchen (15 Jul 2016 12:36 UTC)
Re: istring? Per Bothner (15 Jul 2016 14:25 UTC)
Re: istring? John Cowan (15 Jul 2016 15:53 UTC)
Re: istring? John Cowan (15 Jul 2016 14:59 UTC)
Re: istring? Per Bothner (15 Jul 2016 15:47 UTC)
Re: istring? John Cowan (15 Jul 2016 16:18 UTC)
Re: istring? Marc Nieper-Wißkirchen (16 Jul 2016 13:19 UTC)
Re: istring? John Cowan (16 Jul 2016 15:14 UTC)

Re: istring? Marc Nieper-Wißkirchen 16 Jul 2016 13:19 UTC

> No, it isn't, although it is an informal goal for the Red Edition, on
> the assumption that it's easier to get agreement on things early when
> the barriers to adoption are low.  Later editions will have features
> that cannot have R7RS-small portable implementations, though I hope that
> they will be easily implemented on many Schemes.
How many Schemes have already expressed their intent to implement
R7RS-large? For the users of Scheme (and I guess most of the voters are
not (or won't be) implementors of an R7RS-large Scheme), it is nice to
have a lot of features included. But someone has to implement all this.

> Ephemerons in particular would certainly have been postponed if Will
> Clinger had not pointed out that an implementation using strong references
> is legal.  This is because there is never any guarantee that the GC will
> break specific, or any, ephemerons.  The JVM doesn't have ephemerons,
> but an implementation using weak references is valid: it simply means
> that some garbage that should be collected will not be collected, just
> as conservative GCs do.
Scheme seems to be a schizophrenic in this regard: Implementations are
allowed to implement ephemerons using strong references because garbage
collection is not observable. In the other hand, the standard demands
that implementations are properly tail-recursive. However being
non-properly tail-recursive is as non-observable as not implementing
proper ephemerons.

(An Scheme implementation supporting SRFI 124 properly would allow for
an unbounded chain of ephemerons much like a properly tail recursive
implementation would allow for an unbounded number of active tail calls.)

Marc