Foreign Function Interface: Difference between revisions
(→Links: Added "haskell-ffi-tutorial") |
(Updated link to my blog post.) |
||
Line 25: | Line 25: | ||
* [http://www.serpentine.com/blog/2010/09/04/dealing-with-fragile-c-libraries-e-g-mysql-from-haskell/ Dealing with fragile C libraries (e.g. MySQL) from Haskell] | * [http://www.serpentine.com/blog/2010/09/04/dealing-with-fragile-c-libraries-e-g-mysql-from-haskell/ Dealing with fragile C libraries (e.g. MySQL) from Haskell] | ||
* [http://blog.danieroux.com/2007/01/01/simple-demonstration-of-haskell-ffi/ Simple demonstration of Haskell FFI] | * [http://blog.danieroux.com/2007/01/01/simple-demonstration-of-haskell-ffi/ Simple demonstration of Haskell FFI] | ||
* [http://therning.org/magnus/ | * [http://therning.org/magnus/posts/2006-12-08-238-c-and-haskell-sitting-in-a-tree.html C and Haskell sitting in a tree…] | ||
* [http://vis.renci.org/jeff/2009/07/10/c2hs-example-to-save-other-people-frustration/ C2HS example: To save other people frustration] | * [http://vis.renci.org/jeff/2009/07/10/c2hs-example-to-save-other-people-frustration/ C2HS example: To save other people frustration] | ||
* [[Cxx foreign function interface]]; how to link to a C++ library | * [[Cxx foreign function interface]]; how to link to a C++ library |
Revision as of 23:47, 23 January 2015
Introduction
The Foreign Function Interface (FFI) allows you to link Haskell programs to programs written in another language.
Links
Select one of the following links for more information:
- FFI Introduction
- GHC manual: Writing Haskell interfaces to C code: hsc2hs
- haskell-ffi-tutorial at GitHub
- The official description: chapters 8 and 24 to 37 of The Haskell 2010 Language Report (a draft: The Haskell 98 Foreign Function Interface 1.0. An Addendum to the Haskell 98 Report)
- FFI cook book
- FFI complete examples
- GHC/Using the FFI
- Tackling the awkward squad
- fficxx, a Haskell-C++ Foreign Function Interface Generator
- Applications and libraries/Interfacing other languages
- Use another language to call a function; Haskell
- TABI a typeful tagged cross-language calling convention