Buddha Buck wrote:
> If I'm stepping on toes here, please tell me...
>
See my other message today for the RFCs I'm thinking of writing. Buddha--you
and I should probably sought out offline which of us will write what RFC.

> RFC 169v2: Matrix Indexing
>     Cover my $matrix[$x;$y;$z] syntax
>     Add Jeremy's $matrix[$listref] syntax
>     Discuss why two ways of doing it.
>     Move index iterators to new RFC
>     Move matrix slicing to new RFC
>     Move @#matrix to new RFC
>
I'd like to split this into more RFCs as I suggested earlier.

> RFC X+1:  Matrix Index Iterators
>     Explain the issue
>     Present ^i,^j syntax (and why IMHO it has problems)
>     Present @* syntax    (and why IMHO it is ugly ;-) )
>     Ask for better alternatives.
>
We need to do a lot of work to sort out what these really do!

> A new proposal:
>
> RFC X+3: Flattening Matrices
>     Present @array = flatten(@matrix), which returns the elements of
@matrix
>         as a 1-dimensional (sparse) array.
>     Discuss the efficiency of this
>     How to undo?
>
If they look like LOLs, then an extension I'm already writing to RFC 91 will
provide a flatten() that does exactly this.

> A needed RFC that I'm not confident to write, but I feel it is needed:
>
> RFC X+4: Syntax for Matrix Literals.
>
I'll be writing one that uses LOLs plus some new attributes. The alternative
I suggested to Buddha in a private email uses a new data type:

  |mat = [ [1,2,3],
           [4,5,6],
           [7,8,9] ];
  |row_1 = |mat[1;] ;

If we use this approach we'd need to show how this syntax fits in with
normal lists. I won't be RFCing this though, because I tried to convince
myself out of using LOLs plus attributes last night, and I didn't succeed.

We also need an 'overview' RFC to tie it all together. Some of this can come
from the existing RFC 169.


Reply via email to