Common Lisp and CXX interoperation with JIT
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The Common Foreign Function Interface
(c-include "file.h") => complete FFI wrapper
A Common Lisp library that helps write concise CFFI-related code.
cl-gobject-introspection provides Common Lisp bindings to the GObject Introspection library, allowing Lisp programs to automatically generate interfaces for calling into C libraries that use the GObject system. This enables seamless integration with GNOME ecosystem libraries such as GTK, GLib, and Gio without manual FFI coding. ## Key Features - **Automatic Bindings** — Generates Lisp interfaces from GObject Introspection metadata, eliminating the need for manual FFI definitions. - **Namespace Access** — Uses `nget` and `invoke` macros for concise access to functions, constants, enums, classes, and methods. - **Object Interaction** — Supports method invocation, property access, signal connection, and field manipulation on GObject instances. - **Foreign Object Handling** — Provides utilities to convert between Lisp objects and C pointers for low-level interoperability. - **Multi-Version Support** — Works with different library versions (e.g., GTK 3 and GTK 4) via namespace specification. ## Philosophy The project emphasizes a unified namespace model where repositories, classes, and enumerations are treated as namespaces, simplifying the interface to GObject-based C libraries through consistent macros and functions.