C->Haskell - Haskell Interface Generator -*-text-*- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C->Haskell is a interfacing tool that eases Haskell access to C libraries. The tool gets information about the C data type definitions and function signatures by analysing the C header files of the library. It uses this information to compute the missing details in the template of a Haskell module---called the binding file---that implements a Haskell binding to the C library. Hooks embedded in the binding file signal where, which, and how C objects are accessed from Haskell. The Haskell code in the binding file determines Haskell types signatures and marshaling details. Further information is at http://www.cse.unsw.edu.au/~chak/haskell/c2hs/ Also see the tutorial in `doc/c2hs/'. Contents: AUTHORS -- Author information COPYING -- GNU General Public License (GPL) ChangeLog -- Change history INSTALL -- Help on installing this package Makefile -- Package makefile README -- This file Setup.hs -- Cabal build script TODO -- Open problems, bugs, and ideas for future extensions aclocal.m4 -- Autoconf macros base -- Compiler Toolkit sources c -- Frontend for parsing and analying C header files c2hs -- Main program sources c2hs.cabal -- Cabal package specification c2hs.spec -- RPM build specification chs -- Frontend for parsing and analying Haskell binding modules configure -- Platform-independent configuration file configure.in -- Autoconf input used to produce `configure' doc -- Documentation gen -- Routines for the Haskell interface generation install-sh -- Auxiliary shell script required by `configure' lib -- Library used by generated bindings state -- State management test -- Small test cases toplevel -- Compilation driver -=-=-=-=-=-=-=-=-=-=-=-=-=-=-= INSTALLING =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= See the file `INSTALL'. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- COPYLEFT -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= This system is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This system is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this system; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. NOTE: HOWEVER, all code included into generated bindings is under a BSD-style license that does not place any restrictions on the license of the inteface produced with C->Haskell (ie, closed proprietary licenses are possible, too). In other words, I do not care what you use C->Haskell for or to whom you are giving C->Haskell or any interfaces generated with C->Haskell, only if you modify or improve C->Haskell itself, you have to contribute your changes back to the community. Nevertheless, I will of course be particularly delighted if you choose to make your work freely available. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- CREDITS -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- See the file `AUTHORS'.