Common Lisp Component Pascal
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
cells-gtk Use variable to track GTK initialization state Feb 4, 2013
gtk-ffi Define FFI functions in libgdkglext, provide dll names for windows Feb 3, 2013
ph-maths Move things around. Feb 8, 2009
pod-utils Drop useless shortcut macro Jul 6, 2010
features.lisp Add GType type specification as a feature Aug 11, 2011



This is a fork of cells-gtk3, which is a binding for GTK+ widget toolkit using Cells3. I have not substantially modified it, mostly made it run with current versions of dependencies and modified the FFI layer to use type synonyms.


The system builds against version of dependencies in Quicklisp. Quicklisp contains all Lisp side dependencies. Obviously, you need GTK+ installed (tested with gtk+-2.20.1), and whatever other extensions you want (mostly gtkglext).




Note that both cells and cells-gtk3 have multiple .asd files in top level directory. All must be linked into central registry.

By default are optional dependencies are turned on. If you want optional components not to be loaded you have to edit the features.lisp file in cells-gtk3 directory, and comment out appropriate (pushnew ...) command.


Cells themselves are documented in cells-doc. There is no documentation for cells-gtk3, but there is comprehensive example application in test-gtk subdirectory.


I cleaned up the library just in case I needed GUI in Lisp, but it turned out that I did not. Hence, the primary extent of my testing is running test-gtk:gtk-demo application. Bug reports and/or patches are welcome.

From my testing, the example application runs on:

x86 linux

  • SBCL 1.0.45 (tested with threading, it has been reported on the mailing list that 1.0.20 doesn't work)
  • CLISP 2.47-r2
  • ECL 9.12.3 (with threads and unicode)

Intel MacOSX

I tried only X11 GTK+ from MacPorts. It should be possible to use Quartz based version of GTK just by changing library names, but I have not tried it. There is not GTK-GL extension for Quartz.

  • SBCL 1.0.30 (from MacPorts)
  • CCL 1.3 (from MacPorts)