At 10:56 AM -0500 1/10/08, Joel J. Adamson wrote:
Dear Gambit List,
I have a set of datatypes defined with c-define-type based on the GNU Scientific Library. The Gambit-C manual says "For type checking on the Scheme side..." to use the TAG function of the type definition as in
(c-define-type gsl-matrix* (pointer gsl-matrix "gsl-matrix*"))
IIRC, you only use the tag if you multiple c-define-type that are equivalent.
(c-define-type type1* (pointer type1 #f) (c-define-type type2* (pointer type2 "type") (c-define-type type3* (pointer type3 "type")
Here all 3 types are exchangeable.
What is the best way to use this to define a boolean test (e.g. gsl-matrix*?) for this type? I feel like I must be missing something since the explanation of type checking stops with how to define the TAG and how it's printed in the external representation of an object of that type.
NULL converts to #f, if that's what you're asking.