Skip to content
Bindings for GObject Introspection and libgirepository for Guile
C Scheme Shell Makefile M4 C++ Other
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc Add some documentation on function parameter mapping Jan 17, 2020
tools Drop tools/guile-gi. Oct 27, 2019
.gitignore #36: use system's gimarshallingtests to build libmarshall Sep 5, 2019
.travis.yml Print test-suite.log to Travis console on make check failure Jun 29, 2019
Dockerfile Print test-suite.log to Travis console on make check failure Jun 29, 2019
LICENSE Fix CSS path in generated html Nov 3, 2019
bootstrap add guile 3.0 to GUILE_PKG in Dec 30, 2019
guix.scm Update guix.scm. Oct 27, 2019

Guile GI

Build Status

This is a library for GNU Guile to create language bindings via GObject Introspection.

GNU Guile is an implementation of Scheme, which is a Lisp-like language. This library allows Guile to use GObject-based libraries -- such as GTK+3, GLib, and WebKit2 -- by generating a Scheme API from the GObject Introspection information provided by those libraries.

This is alpha code. It is lightly documented. The API is stabilizing, but may still be subject to change.

Guile GI has two primary components.

  • The gi scheme modules: guile modules that provide functionality to dynamically generate Scheme API from GObject typelib files

  • or libguile-gi.dll: a compiled module that contains glue code to interface with GObject

To create bindings, use the use-typelibs syntax found in the (gi) library.

For the moment, the docs are at


guix environment --ad-hoc -l guix.scm guile
guile-gi examples/browser.scm

Or, create and run in a development environment

guix environment -l guix.scm
./bootstrap && ./configure && make
tools/uninstalled-env tools/guile-gi examples/browser.scm
You can’t perform that action at this time.