A GUI toolkit for Common Lisp


McCLIM

What is McCLIM?

McCLIM is a FOSS implementation of the Common Lisp Interface Manager specification, a powerful toolkit for writing GUIs in Common Lisp. It is licensed under the GNU Library General Public License.

You can read the McCLIM manual draft PDF HTML, but keep in mind that it is still a work in progress. To reach the developers you may write to the mailing list or join the IRC channel #clim @ libera.chat.

Features

  • Mature yet modern CLIM II protocol implementation
  • Extensible GUI toolkit for applications
  • Sophisticated interface manager for Common Lisp
  • Portable between various Common Lisp implementations
  • Robust solution for creating end-user applications

Resources

Some external tutorials for CLIM may be found here:

Examples

(in-package :common-lisp-user)

(defpackage "APP"
  (:use :clim :clim-lisp)
  (:export "APP-MAIN"))

(in-package :app)

(define-application-frame superapp ()
  ()
  (:panes
   (int :interactor :height 400 :width 600))
  (:layouts
   (default int)))

(defun app-main ()
  (run-frame-top-level (make-application-frame 'superapp)))

SuperApp capture

Hall of Fame

McCLIM is written by a diverse group of individuals from across the world. Contributors past and present include:

  • Nisar Ahmad
  • Daniel Barlow
  • Gilbert Baumann
  • Julien Boninfan
  • Alexey Dejneka
  • Andrea Demichele
  • Clemens Fruhwirth
  • Andreas Fuchs
  • Robert Goldman
  • Cyrus Harmon
  • Iban Hatchondo
  • Andy Hefner
  • Daniel KochmaÅ„ski
  • Brian Mastenbrook
  • Mike McDonald
  • Timothy Moore
  • Jan Moringen
  • Elias MÃ¥rtenson
  • Edena Pixel
  • Max-Gerd Retzlaff
  • Christophe Rhodes
  • Duncan Rose
  • Arnaud Rouanet
  • Lionel Salabartan
  • Alessandro Serra
  • Rudi Schlatte
  • Brian Spilsbury
  • Robert Strandh