[Gsll-devel] grid tranpose & diagonal compatibility with marray's

Mirko Vukovic mirko.vukovic at gmail.com
Tue Jan 12 15:42:24 UTC 2010


I am converting some of my code to use grid.

The following is on clisp & cygwin (my sbcl & linux is behind a firewall, so
it takes a bit for me to transfer stuff to them)

It seems that while `transpose' can handle both arrays and marrays, diagonal
can handle only arrays.  I traced the execution to `make-specification' in
specification.lisp: SYSTEM::LIST-ACCESS: NIL is not a pair.


GSL> #m(1 2 3 ^ 4 5 6 ^ 7 8 9)
#<MATRIX-DOUBLE-FLOAT #2A((1.0d0 2.0d0 3.0d0) (4.0d0 5.0d0 6.0d0) (7.0d0
8.0d0 9.0d0))>
GSL> (grid:transpose #m(1 2 3 ^ 4 5 6 ^ 7 8 9))
#<MATRIX-DOUBLE-FLOAT #2A((1.0d0 4.0d0 7.0d0) (2.0d0 5.0d0 8.0d0) (3.0d0
6.0d0 9.0d0))>
GSL> (grid:diagonal #m(1 2 3 ^ 4 5 6 ^ 7 8 9))
; Evaluation aborted.
GSL> (grid:transpose (cl-array #m(1 2 3 ^ 4 5 6 ^ 7 8 9)))
#2A((1.0d0 4.0d0 7.0d0) (2.0d0 5.0d0 8.0d0) (3.0d0 6.0d0 9.0d0))
GSL> (grid:diagonal (cl-array #m(1 2 3 ^ 4 5 6 ^ 7 8 9)))
#(1.0d0 5.0d0 9.0d0)
GSL>

FWIW, in the test suite (tests/compose.lisp), the diagonal tests are on
arrays, and not marrays.

Thanks,

Mirko
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/gsll-devel/attachments/20100112/37f13bb0/attachment.html>


More information about the gsll-devel mailing list