CFFI

CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp.

The CFFI library is composed of a Lisp-implementation-specific backend in the CFFI-SYS package, and a portable frontend in the CFFI package.

The CFFI-SYS backend package defines a low-level interface to the native FFI support in the Lisp implementation. It offers operators for allocating and dereferencing foreign memory, calling foreign functions, and loading shared libraries. The CFFI frontend provides a declarative interface for defining foreign functions, structures, typedefs, enumerated types, etc... It is implemented in portable ANSI CL making use of the low-level operators exported by CFFI-SYS.

A UFFI compatibility layer is also included.

More information about CFFI (including documentation) is available in CFFI's home page at common-lisp.net.

A companion project is Verrazano, a FFI generator (from C and C++ headers) that targets CFFI.

SWIG can also generate CFFI code from headers.

Download ASDF package from http://common-lisp.net/project/cffi/releases/cffi_latest.tar.gz


Pages in this topic: cffi-cairo   CL-ObjC   cl-plplot   IOlib-POSIX   SDL   UFFI  


Also linked from: array-operations   asdf-additions   CFFI-SDL   cl-glfw   cl-ode   cl-opengl   cl-pcp   compatibility layers   Current recommended libraries   development   ffa   ffi   GPGME   index   IOlib   LGLFW   libgpg-error   lisp-magick   lispbuilder-sdl   Marko Kocic   OpenGL Bindings   Osicat   perl-in-lisp   philip-jose   plokami   Pyffi   Qt   Stephen Horner   SWIG   Verrazano   Wish List   wxCL  

CLiki pages can be edited by anyone at any time. Imagine a fearsomely comprehensive disclaimer of liability. Now fear, comprehensively