SRFI 196 ready for finalization? John Cowan (27 Jul 2020 22:57 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (28 Jul 2020 00:24 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (29 Jul 2020 06:59 UTC)
Re: SRFI 196 ready for finalization? John Cowan (29 Jul 2020 14:32 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (29 Jul 2020 17:52 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (29 Jul 2020 18:56 UTC)
Re: SRFI 196 ready for finalization? Arthur A. Gleckler (30 Jul 2020 05:50 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (30 Jul 2020 17:03 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (30 Jul 2020 18:34 UTC)
Re: SRFI 196 ready for finalization? Arthur A. Gleckler (30 Jul 2020 20:17 UTC)
Re: SRFI 196 ready for finalization? John Cowan (30 Jul 2020 23:44 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (31 Jul 2020 06:14 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (31 Jul 2020 17:33 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (31 Jul 2020 18:01 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (31 Jul 2020 18:49 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (01 Aug 2020 06:55 UTC)
Re: SRFI 196 ready for finalization? John Cowan (01 Aug 2020 17:20 UTC)
Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (01 Aug 2020 19:14 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (04 Aug 2020 22:35 UTC)
(missing)
Fwd: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen (26 Aug 2020 19:12 UTC)
Re: Fwd: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (26 Aug 2020 21:03 UTC)
Re: SRFI 196 ready for finalization? John Cowan (05 Aug 2020 02:02 UTC)
Re: SRFI 196 ready for finalization? John Cowan (05 Aug 2020 02:28 UTC)
Re: SRFI 196 ready for finalization? Wolfgang Corcoran-Mathe (05 Aug 2020 02:35 UTC)

Re: SRFI 196 ready for finalization? Marc Nieper-Wißkirchen 29 Jul 2020 06:58 UTC

Just a few comments before finalization:

- In the rationale it says that "(numeric-range 0.0 1.0 0.1) specifies
the sequence 0.0, 0.1, ... 0.9". This is not universally true due to
"0.x" being in inexact number and the possibility of rounding errors.
Unlikely, but I would add a warning that the length of inexact ranges
is not well defined but can be off by 1.

- Is "range?" deliberately underspecified? At the moment, "range?" is
allowed to return "#t" on, say, exact integers if the various
procedures are able to interpret exact integers as ranges (which can
make sense, e.g., an exact integer n could stand for the range 0 ... n
-1).

- There is a note: "The size of a range object is independent of the
number of elements it contains." While I understand what you mean,
this is not completely true because large numbers space proportional
to O(log n) and not O(1). So O(log n) is a better limit. Moreover,
demanding "independence" does not allow for shorter representations of
some ranges (like exact ranges of the form 0 ... n - 1).

- The algorithmic complexities cannot be achieved if the comparator
does not return its result in O(1). However, a comparator does not
have a prescribed complexity. In fact, most comparators will return
their result in O(log n) or in O(n) when n is the absolute value of
the number or the length of the datum.

- The implementation of "numeric-range" does seem to assume that
rounding errors cannot happen when computing the length. I think a
test has to be added whether "start + calculated-len * step < end" but
"start + (calculated-len - 1) * step >= end".

Marc

Am Di., 28. Juli 2020 um 02:24 Uhr schrieb Wolfgang Corcoran-Mathe
<xxxxxx@sigwinch.xyz>:
>
> On 2020-07-27 18:56 -0400, John Cowan wrote:
> > We can finalize this on Wednesday or Thursday unless anyone
> > thinks more discussion is needed.
>
> Agreed.
>
> --
> Wolfgang Corcoran-Mathe  <xxxxxx@sigwinch.xyz>
>
> "More shall come after us than have gone before; the world
> is not yet middle-aged." --Herman Melville, _White-Jacket_