[Gsll-devel] What is needed to fix matrix views?

Zach elzacho at gmail.com
Thu Apr 10 02:13:48 UTC 2008


To tell you the truth, I never looked closely enough at views to
> figure what it would take to make them work.  It may be trivial, or it
> may be impossible.
>

Yeah, I now believe my suspicions to be correct, at least as of a year and
half ago.  Maybe there have been some advances as CLISP seems to support the
needed feature and I'd bet the C friendly ECL and GCL both do as well, still
no idea on SBCL.

One thing to keep in mind is that I am rewriting what
> I call "data" (matrix, vectors, etc.) to use Tamas Papp's
> foreign-friendly arrays.  On SBCL, this will mean that the CL array
> and the C array will be one and the same (no copying).


Hmmm... that sounds good, still not sure how Tamas' FFAs would work.  I was
preparing to suggest the *other* route that Tamas mentions on his page,
basically using the GSL data structures thinly wrapped in a Lisp object (to
tie it into the GC).  I guess both have their pros and cons.

BTW, I have one question, purely out of curiosity.  Even if you use an FFA,
GSL is going to expect data in the format the GSL developers designed, e.g.:

     00 01 02 03 XX XX XX XX
     10 11 12 13 XX XX XX XX
     20 21 22 23 XX XX XX XX

Which means that either the Lisp array will have extra junk to carry around,
and hence new matrix operations will need to be defined, or some C side
trickery must be performed to translate it, which is what we are trying to
avoid, right?  How do you deal with this (or plan to)?

Best,
Zach



>
> On Wed, Apr 9, 2008 at 5:45 PM, Zach <elzacho at gmail.com> wrote:
> > Liam et. al.,
> >
> > OK, tell me if I am wrong.  Matrix/vector views are not supported in
> GSLL.
> > This is due to the fact that we need to recieve a structure by value.
>  This
> > cannot be done due to a weakness of the underlying CFFI.  Which in turn
> > (according to their mailing list) is actually a weakness of most Lisp
> > implementations.  In order to get this to work there is some C language
> glue
> > that needs to be written.  Is this a correct assessment of the
> situation?
> >
> > Zach
> >
> >
> > _______________________________________________
> >  Gsll-devel mailing list
> >  Gsll-devel at common-lisp.net
> >  http://common-lisp.net/cgi-bin/mailman/listinfo/gsll-devel
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/gsll-devel/attachments/20080409/76d82467/attachment.html>


More information about the gsll-devel mailing list