libffi is a portable Foreign Function Interface library, used to call functions defined in a different programming language
libffi defines a C API for calling functions defined in different languages with different calling conventions. It is commonly used to provide a bridge between compiled languages and interpreted languages.
See the project homepage or the Wikipedia page for more information.