Executing #64m(1 2 3)
There is no class named GRID::VECTOR-UNSIGNED-BYTE-64. [Condition of type SIMPLE-ERROR]
Looking at the gsd code I found the following in foreign-arrays & friends.
*array-element-types* does not contain 64-byte definitions:
(SINGLE-FLOAT DOUBLE-FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT) (SIGNED-BYTE 8) (UNSIGNED-BYTE 8) (SIGNED-BYTE 16) (UNSIGNED-BYTE 16) (SIGNED-BYTE 32) (UNSIGNED-BYTE 32))
and neither does *cstd-cl-type-mapping*
This may be because *cstd-cl-type-mapping* does not have an entry that would correspond to a 64 byte integer - and I don't have a clue as to what such an entry would be.
Mirko
If you are on 32-bit hardware, you do not have 64 bit types. Try this: (cffi:foreign-type-size :long) if it says 4, you're out of luck. If it says 8, you should be all set. That result is determined by the hardware, the OS, and the Lisp implementation, not by GSLL/grid.
Liam
On Fri, Dec 3, 2010 at 10:14 AM, Mirko Vukovic mirko.vukovic@gmail.com wrote:
Executing #64m(1 2 3)
There is no class named GRID::VECTOR-UNSIGNED-BYTE-64. [Condition of type SIMPLE-ERROR]
Looking at the gsd code I found the following in foreign-arrays & friends.
*array-element-types* does not contain 64-byte definitions:
(SINGLE-FLOAT DOUBLE-FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT) (SIGNED-BYTE 8) (UNSIGNED-BYTE 8) (SIGNED-BYTE 16) (UNSIGNED-BYTE 16) (SIGNED-BYTE 32) (UNSIGNED-BYTE 32))
and neither does *cstd-cl-type-mapping*
This may be because *cstd-cl-type-mapping* does not have an entry that would correspond to a 64 byte integer - and I don't have a clue as to what such an entry would be.
Mirko
GSLL-devel mailing list GSLL-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/gsll-devel
Hm,
I am on 64-bit RH linux, and a recent sbcl. But I get 4 not 8.
On Fri, Dec 3, 2010 at 11:23 AM, Liam Healy lhealy@common-lisp.net wrote:
If you are on 32-bit hardware, you do not have 64 bit types. Try this: (cffi:foreign-type-size :long) if it says 4, you're out of luck. If it says 8, you should be all set. That result is determined by the hardware, the OS, and the Lisp implementation, not by GSLL/grid.
Liam
On Fri, Dec 3, 2010 at 10:14 AM, Mirko Vukovic mirko.vukovic@gmail.com wrote:
Executing #64m(1 2 3)
There is no class named GRID::VECTOR-UNSIGNED-BYTE-64. [Condition of type SIMPLE-ERROR]
Looking at the gsd code I found the following in foreign-arrays & friends.
*array-element-types* does not contain 64-byte definitions:
(SINGLE-FLOAT DOUBLE-FLOAT (COMPLEX SINGLE-FLOAT) (COMPLEX DOUBLE-FLOAT) (SIGNED-BYTE 8) (UNSIGNED-BYTE 8) (SIGNED-BYTE 16) (UNSIGNED-BYTE 16) (SIGNED-BYTE 32) (UNSIGNED-BYTE 32))
and neither does *cstd-cl-type-mapping*
This may be because *cstd-cl-type-mapping* does not have an entry that would correspond to a 64 byte integer - and I don't have a clue as to what such an entry would be.
Mirko
GSLL-devel mailing list GSLL-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/gsll-devel