Common Lisp Interface Manager
The Common Lisp Interface Manager (CLIM) is a Common Lisp-based programming interface for creating user interfaces, i.e., graphical user interfaces (GUIs). It is a fully object-oriented programming User Interface Management System,[1] using the Common Lisp Object System (CLOS) and is based on the idea of stream input and output.[2] There are also facilities for output device independence. It is descended from the GUI system Dynamic Windows[3] of Symbolics' Lisp machines[4] Main development was between 1988 and 1993. CLIM 2.0 was released in 1993.
CLIM has been designed to be portable across different Common Lisp implementations and different windowing systems. It uses a reflective architecture for its window system interface.[5] CLIM supports, like Dynamic Windows, so-called Presentations.[6][7][8]
CLIM is available for Allegro CL,[9] LispWorks,[10] Macintosh Common Lisp, and Symbolics Genera[11]

A free software implementation of CLIM is named McCLIM.[12] It has several extensions to CLIM and has been used for several applications like Climacs, an Emacs-like editor. It also provides a mouse-sensitive Lisp Listener, a read–eval–print loop (REPL) for Common Lisp.
Applications using CLIM
- BB1,[permanent dead link] Blackboard system
- CLASP, analyze data from experiments by using graphics, statistical tests and various kinds of data manipulation
- CLIB, a prototype of an interface builder for CLIM
- Direct Labor Management System, managing the automobile manufacturing process system at Ford's assembly plants
- GenEd, An Editor with Generic Semantics for Formal Reasoning about Visual Notations
- Grasper-CL, a graph management system
- KONWERK, a domain independent configuration tool
- Mirage, an editor for building gadget-oriented graphical user interfaces.
- SENEX, a CLOS/CLIM application for molecular pathology
- SPIKE, scheduling system for the Hubble space telescope observations. Also used for ASTRO-D, an X-Ray observation astronomy mission
- SpyGlass, an analysis environment for viewing packet traces, from BBN.
- VITRA Workbench, an integrated vision and natural language processing system
References
- ^ User Interface Management Systems: The CLIM Perspective, Ralf Möller
- ^ A Guided Tour of CLIM, Common Lisp Interface Manager
- ^ Programming the User Interface, Genera 8.3. Symbolics, Inc.
- ^ "...you can check out Common Lisp Interface Manager (CLIM). A descendant of the Symbolics Lisp machines GUI framework, CLIM is powerful but complex. Although many commercial Common Lisp implementations actually support it, it doesn't seem to have seen a lot of use. But in the past couple years, an open-source implementation of CLIM, McCLIM – now hosted at Common-Lisp.net – has been picking up steam lately, so we may be on the verge of a CLIM renaissance."[1] from "Conclusion: What's Next?" in Practical Common Lisp, by Peter Seibel.
- ^ Implementation Reflection in Silica, Ramana Rao, Xerox PARC
- ^ Presentation Based User Interfaces, MIT Technical Report: AITR-794, 1984, Eugene C. IV Ciccarelli
- ^ An information presentation system, Frank Zdybel, Norton R. Greenfeld, Martin D. Yonke
- ^ An Implementation of CLIM Presentation Types, Timothy Moore, 2008
- ^ CLIM 2 User Guide, version 2.2.2, Allegro Common Lisp 9.0, Franz, Inc.
- ^ Common Lisp Interface Manager User Guide, Version 2.0 LIspWorks 7.0 Manual
- ^ Common Lisp Interface Manager CLIM, Release 2.0, Symbolics Genera 8.3
- ^ A Free Implementation of CLIM, Robert Strandh, Timothy Moore, 2002
External links
- CLIM 2.0 Specification as multiple HTML pages; (McCLIM tarballs contain the specification's TeX sources)
- McCLIM Project Page
- Climacs Project Page