calculations involving matrices of matrices



Hello,

I would like to use matrices whose elements are matrices themselves.
I see that I can do it in maxima, however I have two questions:

1. How can I tell maxima that an atom (not sure it is the correct term, let
say a non-initialized variable) is a matrix?

2. If variables 'a', 'b', ... 'h' are matrices and

    [a  b]       [e  f]
A = [    ] , B = [    ]
    [c  d]       [g  h]

then A . B is calculated in maxima as

        [a*e+b*g a*f+b*h]
A . B = [               ]
        [c*e+d*g c*f+d*h]

(where the multiplications denoted by '*' are by element)

I would like to do it rather as

        [a.e+b.g a.f+b.h]
A . B = [               ]
        [c.e+d.g c.f+d.h]

(where the multiplications are in matrix sense).

Can I achieve this somehow?

Thanks,
-- 
Stanislav