Make README leaner
[cffi.git] / README.md
blob14e8a54761aa5ddbe1439788028eaa8f172871b8
1 [![Build Status](https://travis-ci.org/cffi/cffi.svg?branch=master)](https://travis-ci.org/cffi/cffi)
3 CFFI, the Common Foreign Function Interface, purports to be a portable
4 foreign function interface for Common Lisp. The CFFI library is
5 composed of a Lisp-implementation-specific backend in the CFFI-SYS
6 package, and a portable frontend in the CFFI package.
8 The CFFI-SYS backend package defines a low-level interface to the
9 native FFI support in the Lisp implementation. It offers operators for
10 allocating and dereferencing foreign memory, calling foreign
11 functions, and loading shared libraries. The CFFI frontend provides a
12 declarative interface for defining foreign functions, structures,
13 typedefs, enumerated types, etc. It is implemented in portable ANSI CL
14 making use of the low-level operators exported by CFFI-SYS.
16 CFFI/C2FFI is a mechanism to automatically generate CFFI bindings
17 based on the output of [c2ffi][2]. Until it is properly documented
18 please see [these]((https://github.com/hu-dwim/hu.dwim.bluez)
19 [projects](https://github.com/hu-dwim/hu.dwim.zlib)
20 [as](https://github.com/hu-dwim/hu.dwim.sdl)
21 [examples](https://github.com/attila-lendvai/hu.dwim.mosquitto).
23 Please consult [the manual][1] for further details, including
24 installation instructions.
26 [1]: http://common-lisp.net/project/cffi/manual/html_node/
27 [2]: https://github.com/rpav/c2ffi