usefulness in code Peter McGoron (31 Mar 2026 12:07 UTC)
Re: usefulness in code Peter McGoron (31 Mar 2026 14:54 UTC)
Re: usefulness in code John Cowan (31 Mar 2026 16:03 UTC)
Re: usefulness in code Alex Shinn (31 Mar 2026 21:56 UTC)
Re: usefulness in code Peter McGoron (02 Apr 2026 10:46 UTC)
Re: usefulness in code John Cowan (02 Apr 2026 22:38 UTC)

Re: usefulness in code John Cowan 02 Apr 2026 22:38 UTC

On Thu, Apr 2, 2026 at 6:46 AM Peter McGoron <xxxxxx@mcgoron.com> wrote:

> That would also make it so that #0 through #9 are not reserved, which is
> good.

In CL any # construct can be supplied with digits between the # and
the following non-digit: this number is passed to readtable
procedures.  For example, `#(1 2 3)` means a vector of length 3, just
as in Scheme, but `#32(1 2 3)` is a vector of length 32 whose first
three elements are initialized to 1, 2, 3, but the remaining elements
are initialized to the last value.  Similarly, `#32xface` is
syntactically legal, but is undefined: SBCL ignores it with a warning,
ECL raises a non-continuable exception.

> array-literal ::= "#a" [tag] bounds-or-dim datum
> tag ::= u8 | ... | u64 | s8 | ... | s64 | f32 | f64 | c64 | c128
> bounds-or-dim ::= "(" bound* ")" | integer
> bound ::= integer | "(" integer integer ")"

In my rewrite I'll add that as an issue to be discussed.

> As another thing: the final "format-array" example uses the SRFI 163
> bounds syntax.

I'll add some wording to make clear that what it writes out is merely exemplary.