Leonardo Lopes Pereira writes: > > To be more clear. I want to be able to call a C function from guile. > The problem is that this function has a struct as an arg and this > struct has variable members. So, I need to create a list on > scheme/guile and convert it to a C struct that will be used as an arg > to that function.
one can add another smob type that actually holds a pointer to the struct. this works well if the interface of the strcut is controlled by the C API. Smobs also provide for garbage collection mechanism, which is a problem in hand-woven conversions from structured C data to Scheme data. Most C libraries iontroducing struct arguments essentially define the struct and functions to handle pointers of that struct, including allocation functions , freeing functions, copying etc. These need to be plugged into the definition of a smob type. Jim Blandy wrote a manual for that almost 10 years ago, coming with the guile dists. Nowadays, the gh_ interface is deprecated, so one should switch to scm_ interface in non-heritage projects Klaus Schilling _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user