Hello FFI-ers, While the FFI spec. is excellent, I'd really like to see a companion document with real examples of how to use the FFI for the easy, obvious kinds of library interfacing tasks that are likely to arise in practice.
Such examples would hopefully help answer things like the following rather naieve question that I have: Is there a particular "best" way to deal with C functions that take "lightweight" struct values (or pointers to such structs), such as the classic: struct point { float x, y; }; ? Should I treat this is an opaque ForeignPtr, use heap allocation everywhere, and abandon pattern matching on the Haskell side? Or should I create a data type on the Haskell side, and marshall and un-marshall this to the C side as necessary (perhaps by writing wrapper routines that take x and y as separate arguments)? Or can I use Storable in some way to do better than either of the above options? It's just not clear to me from the specification. Any help would be appreciated. Thanks, -antony -- Antony Courtney Grad. Student, Dept. of Computer Science, Yale University [EMAIL PROTECTED] http://www.apocalypse.org/pub/u/antony _______________________________________________ FFI mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/ffi