|
From: Robert D. <rob...@gm...> - 2016-08-28 05:35:14
|
On 2016-08-28, David Billinghurst <dbm...@gm...> wrote: > (%i2) A: matrix([a11,a12],[a21,a22]); > (%i4) r:matrix([1,0]); > (%i6) A.r; > [ a11 ] > (%o6) [ ] > [ a21 ] There is code in MULTIPLYMATRICES to multiply by the transpose when the second argument has one row. I suppose the rationale is that allows multiplying A.foo where foo is a list instead of a matrix, and I guess that's OK. But I think it's a bug to do the same for a matrix with one row. See src/matrix.lisp circa line 483. I think that stuff should be cut out of MULTIPLYMATRICES, and any callers should ensure that the arguments are conformant (mungeing a list argument as necessary). FWIW Robert Dodier |