CLIM
   HOME

TheInfoList



OR:

The Common Lisp Interface Manager (CLIM) is a
Common Lisp Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ''ANSI INCITS 226-1994 (S20018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived fro ...
-based programming interface for creating
user interface In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine f ...
s, i.e.,
graphical user interface The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
s (GUIs). It provides an
application programming interface An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software interface, offering a service to other pieces of software. A document or standard that describes how t ...
(API) to user interface facilities for the programming language
Lisp A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech. Types * A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lisping ...
. It is a fully
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pr ...
user interface management system A User Interface Management System (UIMS) is a mechanism for cleanly separating process or business logic from Graphical user interface (GUI) code in a computer program. UIMS are designed to support N-tier architectures by strictly defining and e ...
, using the
Common Lisp Object System The Common Lisp Object System (CLOS) is the facility for object-oriented programming which is part of ANSI Common Lisp. CLOS is a powerful dynamic object system which differs radically from the OOP facilities found in more static languages such as ...
(CLOS) and is based on the mechanism of
stream A stream is a continuous body of water, body of surface water Current (stream), flowing within the stream bed, bed and bank (geography), banks of a channel (geography), channel. Depending on its location or certain characteristics, a stream ...
input and output In computing, input/output (I/O, or informally io or IO) is the communication between an information processing system, such as a computer, and the outside world, possibly a human or another information processing system. Inputs are the signals ...
. There are also facilities for output device independence. It is descended from the GUI system Dynamic Windows of
Symbolics Symbolics was a computer manufacturer Symbolics, Inc., and a privately held company that acquired the assets of the former company and continues to sell and maintain the Open Genera Lisp system and the Macsyma computer algebra system.
'
Lisp machine Lisp machines are general-purpose computers designed to efficiently run Lisp as their main software and programming language, usually via hardware support. They are an example of a high-level language computer architecture, and in a sense, the ...
s between 1988 and 1993. The main development was CLIM 2.0, released in 1993. It is
free and open source software Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
released under a
GNU Library General Public License The GNU Lesser General Public License (LGPL) is a free-software license published by the Free Software Foundation (FSF). The license allows developers and companies to use and integrate a software component released under the LGPL into their own ...
(LGPL). CLIM has been designed to be
portable Portable may refer to: General * Portable building, a manufactured structure that is built off site and moved in upon completion of site and utility work * Portable classroom, a temporary building installed on the grounds of a school to provide a ...
across different
Common Lisp Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ''ANSI INCITS 226-1994 (S20018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived fro ...
implementations and different
windowing system In computing, a windowing system (or window system) is software that manages separately different parts of display screens. It is a type of graphical user interface (GUI) which implements the WIMP (windows, icons, menus, pointer) paradigm for ...
s. It uses a
reflective Reflection is the change in direction of a wavefront at an interface between two different media so that the wavefront returns into the medium from which it originated. Common examples include the reflection of light, sound and water waves. The ' ...
architecture for its window system interface. CLIM supports, like Dynamic Windows, so-called Presentations. CLIM is available for Allegro CL, LispWorks, Macintosh Common Lisp, and Symbolics Genera A
free software Free software or libre software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, no ...
implementation of CLIM is named
McCLIM McCLIM is an implementation of the Common Lisp Interface Manager (CLIM), for the programming language Common Lisp. The project is named partly after Mike McDonald, the person who began it. It is free and open-source software released under the GN ...
. It has several extensions to CLIM and has been used for several applications like Climacs, an
Emacs Emacs , originally named EMACS (an acronym for "Editor MACroS"), is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, s ...
-like editor. It also provides a
mouse A mouse ( : mice) is a small rodent. Characteristically, mice are known to have a pointed snout, small rounded ears, a body-length scaly tail, and a high breeding rate. The best known mouse species is the common house mouse (''Mus musculus' ...
-sensitive Lisp Listener, a
read–eval–print loop A read–eval–print loop (REPL), also termed an interactive toplevel or language shell, is a simple interactive computer programming environment that takes single user inputs, executes them, and returns the result to the user; a program written ...
(REPL) for Common Lisp.


Applications using CLIM

* BB1 Blackboard Kernel (BBK) * CLASP: analyzes data from experiments via graphics, statistical tests, and various data manipulation types * CLIB, a prototype interface builder for CLIM * Direct Labor Management System (DLMS), manages automobile manufacturing process system at Ford assembly plants
DLMAPS
an ontology-based spatial query language and environment, a predecessor of GeoSPARQL
GenEd
editor with generic semantics for formal reasoning on visual notations * Grasper-CL, graph management system
KONWERK
a domain independent configuration tool
Mirage
an editor for building gadget-oriented graphical user interfaces.
Pathway Tools
a comprehensive bioinformatics software package that spans genome data management, systems biology, and omics data analysis.
Petri nets
a Petri net editor and simulator
SENEX
a CLOS/CLIM application for molecular pathology
SPIKE
scheduling system for the Hubble space telescope observations. Also used fo
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
VISCO
a visual spatial query language
Climaxima
a
Maxima (software) Maxima () is a computer algebra system (CAS) based on a 1982 version of Macsyma. It is written in Common Lisp and runs on all POSIX platforms such as macOS, Unix, BSD, and Linux, as well as under Microsoft Windows and Android. It is free softwar ...
graphical front-end.
Tangram
a Tangram Puzzle Solver capable of solving arbitrary geometric tiling problems.


References


External links

* , McCLIM
CLIM 2.0 Specification
as multiple
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
pages; (McCLIM tarballs contain the specification's
TeX Tex may refer to: People and fictional characters * Tex (nickname), a list of people and fictional characters with the nickname * Joe Tex (1933–1982), stage name of American soul singer Joseph Arrington Jr. Entertainment * ''Tex'', the Italian ...
sources) {{Lisp programming language Common Lisp Common Lisp (programming language) software