Sophie

Sophie

distrib > Mandriva > 9.2 > i586 > by-pkgid > cb5625aca3e4def202f3617de4d26932 > files > 31

c2hs-0.9.9-2mdk.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
 <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
 <TITLE>The Binding Generator C->Haskell</TITLE>
 <LINK HREF="c2hs-1.html" REL=next>


</HEAD>
<BODY>
<A HREF="c2hs-1.html">Next</A>
Previous
Contents
<HR>
<H1>The Binding Generator C->Haskell</H1>

<H2>Manuel M. T. Chakravarty, <CODE>chak@cse.unsw.edu.au</CODE></H2>v0.7, 18 June 2001
<P><HR>
<EM>C-&gt;Haskell is an interface generator that simplifies the development of
<A HREF="http://haskell.org">Haskell</A> bindings to C libraries.  The
tool processes existing C header files that determine data layout and function
signatures on the C side in conjunction with Haskell modules that specify
Haskell-side type signatures and marshaling details.  Hooks embedded in the
Haskell code signal access to C structures and functions -- they are expanded
by the interfacing tool in dependence on information from the corresponding C
header file.  Another noteworthy property is the lightweight nature of the
approach.
More background information is available in a research paper discussing
C-&gt;Haskell, which is at
<A HREF="http://www.cse.unsw.edu.au/~chak/papers/papers.html#c2hs">http://www.cse.unsw.edu.au/~chak/papers/papers.html#c2hs</A>.</EM>
<HR>
<P><B>Copyright &amp; Distribution</B>
<P>Copyright (c) [1999..2001] by 
<A HREF="http://www.cse.unsw.edu.au/~chak/">Manuel M. T. Chakravarty</A>.  
The manual is distributed under the terms GNU Free Documentation License
available from
<A HREF="http://www.fsf.org/copyleft/fdl.html">http://www.fsf.org/copyleft/fdl.html</A>.
<P>The master copy of this document is at 
<A HREF="http://www.cse.unsw.edu.au/~chak/haskell/c2hs/">http://www.cse.unsw.edu.au/~chak/haskell/c2hs/</A>; the source is in
SGML, which allows you to produce a selection of standard formats, including
HTML and Postscript.
<P>
<P><B>Contributions</B>
<P>If you have any comments, suggestions, or contributions, please send them to
<A HREF="mailto:chak@cse.unsw.edu.au">chak@cse.unsw.edu.au</A>.
<P>
<P>
<P>
<H2><A NAME="toc1">1.</A> <A HREF="c2hs-1.html">Installation</A></H2>

<UL>
<LI><A HREF="c2hs-1.html#ss1.1">1.1 Where is the Source?</A>
<LI><A HREF="c2hs-1.html#ss1.2">1.2 What Else Do I Need?</A>
<LI><A HREF="c2hs-1.html#ss1.3">1.3 I Got Everything, and Now?</A>
</UL>
<P>
<H2><A NAME="toc2">2.</A> <A HREF="c2hs-2.html">Usage of C-&gt;Haskell</A></H2>

<UL>
<LI><A HREF="c2hs-2.html#ss2.1">2.1 Usage of <CODE>c2hs</CODE></A>
<LI><A HREF="c2hs-2.html#ss2.2">2.2 Compilation of a Generated Haskell API</A>
</UL>
<P>
<H2><A NAME="toc3">3.</A> <A HREF="c2hs-3.html">Implementation of Haskell Binding Modules</A></H2>

<UL>
<LI><A HREF="c2hs-3.html#ss3.1">3.1 Import Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.2">3.2 Context Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.3">3.3 Type Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.4">3.4 Sizeof Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.5">3.5 Enumeration Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.6">3.6 Call Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.7">3.7 Get Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.8">3.8 Set Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.9">3.9 Pointer Hooks</A>
<LI><A HREF="c2hs-3.html#ss3.10">3.10 Grammar Rules</A>
</UL>
<P>
<H2><A NAME="toc4">4.</A> <A HREF="c2hs-4.html">The Haskell FFI Marshalling Library</A></H2>

<P>
<H2><A NAME="toc5">5.</A> <A HREF="c2hs-5.html">Bug Reports and Suggestions</A></H2>

<P>
<H2><A NAME="toc6">6.</A> <A HREF="c2hs-6.html">Copyright</A></H2>

<P>
<H2><A NAME="toc7">7.</A> <A HREF="c2hs-7.html">GNU Free Documentation License</A></H2>

<P>
<H2><A NAME="toc8">8.</A> <A HREF="c2hs-8.html">Release Notes</A></H2>

<UL>
<LI><A HREF="c2hs-8.html#ss8.1">8.1 Version 0.9.9 "Blue Ginger"</A>
<LI><A HREF="c2hs-8.html#ss8.2">8.2 Version 0.8.2 "Gentle Moon"</A>
<LI><A HREF="c2hs-8.html#ss8.3">8.3 Version 0.8.1 "Gentle Moon"</A>
<LI><A HREF="c2hs-8.html#ss8.4">8.4 Version 0.7.10 "Afterthought"</A>
<LI><A HREF="c2hs-8.html#ss8.5">8.5 Version 0.7.9 "Afterthought"</A>
<LI><A HREF="c2hs-8.html#ss8.6">8.6 Version 0.7.8</A>
<LI><A HREF="c2hs-8.html#ss8.7">8.7 Version 0.7.7</A>
<LI><A HREF="c2hs-8.html#ss8.8">8.8 Version 0.7.6</A>
<LI><A HREF="c2hs-8.html#ss8.9">8.9 Version 0.7.5</A>
</UL>
<HR>
<A HREF="c2hs-1.html">Next</A>
Previous
Contents
</BODY>
</HTML>