Re: An error in the SRFI document, and multi-indices are what (values ...) returns Bradley Lucier 15 Feb 2026 17:12 UTC

On 2/10/26 01:24, Marc Nieper-Wißkirchen wrote:
> ---- External Email: Use caution with attachments, links, or sharing data ----
>
>
> Hi Brad,
>
>> is incorrect, the zero-dimensional interval has one element, namely
>> (values). That's why
>
> Can you clarify what you mean by that?
>
> ‘(values)’ is an expression, so you cannot mean this literally. But
> when ‘(values)’ is evaluated, zero values are yielded, so I don't see
> how to make sense of your statement.
>
> Thanks,
>
> Marc

Good question.

After a bit of thought I came up with this wording:
===================
An index (plural: indices) is a Scheme exact integer.

A multi-index (plural: multi-indices) is a finite sequence of zero or
more indices. While not a Scheme object per se, the sequence of indices
making up a multi-index may be returned by the values procedure in
Scheme. (See, for example, the new-domain->old-domain procedure argument
to specialized-array-share.) The number of indices in a multi-index is
called its dimension. There is only one zero-dimensional multi-index,
which is a sequence of no indices at all, which we call the empty
multi-index.
===================
A sequence of zero values is a multi-index, and it is returned by
(values), but it is a bit mind-bending.  (I feel a bit like a
mathematician in the Middle Ages contemplating the nature of the number
zero.)

Brad