This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

accessing C structs from Scheme (was: structs, records, SMOBs etc.)



> Therefore I'd like if the new record type could be "mapped" over an
> application struct and if it would enable Scheme level access to
> binary data.

One problem I see with this is that the offsets of the fields end up
appearing explicitly in C code.  Those offsets will change from one
architecture to the next.  You're also duplicating the description of
the structure --- you've got the actual C declaration in the header
file, and then the Scheme declaration.

I suppose the same is true of the Perl "pack" and "unpack" functions,
but it would be nicer to talk about this stuff in the context of a
more robust framework, where everything was generated from the
structure description in the C source code.

I think this all relates to FFI stuff, which is really just a subset
of the grand problem of How To Describe Interfaces.