[C2hs] ANNOUNCE: c2hs 0.16.3
Duncan Coutts
duncan.coutts at googlemail.com
Thu Mar 24 14:07:42 CET 2011
All,
c2hs version 0.16.3 is out and is available from hackage
http://hackage.haskell.org/package/c2hs
What is c2hs
============
c2hs is an FFI preprocessor tool, a bit like hsc2hs, that helps with the
development of Haskell bindings to C libraries.
The major advantages of using c2hs compared to writing foreign imports
by hand (or using hsc2hs) are:
* Cross-language type safety:
C functions are imported with the correct Haskell types.
* Saves time:
boilerplate marshaling code is generated.
It works by extracting interface information from C header files and it
generates Haskell code with foreign imports and marshalling.
Changes in this release
=======================
* In and out marshallers may now have arguments, rather than just
being single function names.
* Foreign function imports will now use stdcall if the C headers
specify this calling convention. This will help with bindings to
some C libraries on Windows.
* New {# alignof #} hook, like the existing {# sizeof #} hook.
This is useful for the alignment in Storable instances.
* Fewer marshalling functions are needed from the bundled C2HS
module. The trend is towards eliminating the need for any
axillary marshalling module.
Credits
=======
Thanks to Jonathan Rockway, ron at gamr7.com and Dmitry Astapov for
contributions to this release.
Links
=====
Home page:
http://www.cse.unsw.edu.au/~chak/haskell/c2hs/
Bug tracker:
http://hackage.haskell.org/trac/c2hs/
Duncan
More information about the C2hs
mailing list