My main comment on the literals pre-SRFI is that the notation is confusing and hard to read because it's too terse and too full of @ signs, which are large and ugly.  Here's my suggestion:

# - required
rank (digits) optional, half the length of the shape list, or if no shape list then 1.
tag (a, u1, u8, s8, ..., c128) mandatory unless both rank and shape are missing (for backward compatibility with Scheme general vectors)
shape - colon followed by a shape list.  Optional, assumes lower bound of 0 for all dimensions and upper bound as implied by contents and rank
contents - use to initialize the array

If both rank and shape are present they must agree.

Examples:

#(1 2 3) - general vector with rank 1, tag a, shape (0 2), content (1 2 3)
#a(1 2 3) - same
#s64(1 2 3) - same but long int vector
#2u8((1 2) (3 4)) - byte matrix, shape (0 1 0 1)
#2u16:(1 3 4 6) ((1 2 3) (4 5 6) (7 8 9)): unsigned short matrix with dimensions [1:3, 4:6] so 3 x 3


What do you think of this? 

Typo: "verctor" for "vector"

On Tue, Oct 30, 2018 at 7:18 PM Per Bothner <xxxxxx@bothner.com> wrote:
On 10/30/18 3:30 PM, John Cowan wrote:
> I'll look at both of these tonight if possible, but s/Enchanced/Enhanced/.

Oops.  Fixed.  (I also made a few other tweaks.)

> "Typos always concentrate in the biggest fonts."

That - and in Subject lines of emails that spawn long threads ...
--
        --Per Bothner
xxxxxx@bothner.com   http://per.bothner.com/