RE: diagmatrix()



> concatenation: (putting two matrices into one, e.g. A(2x2) B(2x2) and [A B] is 2x4.
> Just my wish list, until I learn lisp to do it myself.

Lisp not needed for this:

    m1: matrix([2,3],[4,5]);
    m2: matrix([6,7],[8,9]));
    map(append,m1,m2);

This takes advantage of the representation of matrices as lists of rows.

To concatenate "vertically", use transpose:

    transpose(map(append,transpose(m1),transpose(m2)));

> It would also be great if matrix( a,b,c,.. ) could work with matrix columns as well as with rows.

Simple solution:

    transpose(matrix(...))

         -s