home *** CD-ROM | disk | FTP | other *** search
- Path: bloom-beacon.mit.edu!uhog.mit.edu!nntp.club.cc.cmu.edu!cantaloupe.srv.cs.cmu.edu!mkant
- From: mkant+@cs.cmu.edu (Mark Kantrowitz)
- Newsgroups: comp.lang.lisp,news.answers,comp.answers
- Subject: FAQ: Lisp Window Systems and GUIs 7/7 [Monthly posting]
- Supersedes: <LISP_7_782031621@CS.CMU.EDU>
- Followup-To: poster
- Date: 13 Nov 1994 08:02:38 GMT
- Organization: Carnegie-Mellon University, School of Computer Science
- Lines: 268
- Approved: news-answers-request@MIT.Edu
- Distribution: world
- Expires: 25 Dec 1994 08:00:25 GMT
- Message-ID: <LISP_7_784713625@CS.CMU.EDU>
- References: <LISP_6_784713625@CS.CMU.EDU>
- Reply-To: ai+lisp-faq@cs.cmu.edu
- NNTP-Posting-Host: glinda.oz.cs.cmu.edu
- Summary: X Window System, GUIs and other Window Systems in Lisp
- Xref: bloom-beacon.mit.edu comp.lang.lisp:7457 news.answers:29288 comp.answers:8321
-
- Archive-name: lisp-faq/part7
- Last-Modified: Wed Oct 12 22:16:04 1994 by Mark Kantrowitz
- Version: 1.50
- Maintainer: Mark Kantrowitz and Barry Margolin <ai+lisp-faq@cs.cmu.edu>
- URL: http://www.cs.cmu.edu:8001/Web/Groups/AI/html/faqs/lang/lisp/top.html
- Size: 15804 bytes, 276 lines
-
- ;;; ****************************************************************
- ;;; Lisp Window Systems and GUIs ***********************************
- ;;; ****************************************************************
- ;;; Written by Mark Kantrowitz and Barry Margolin
- ;;; lisp_7.faq
-
- This post contains Part 7 of the Lisp FAQ.
-
- If you think of questions that are appropriate for this FAQ, or would
- like to improve an answer, please send email to us at ai+lisp-faq@cs.cmu.edu.
-
- Topics Covered (Part 7):
-
- [7-1] How can I use the X Window System or other GUIs from Lisp?
- [7-2] What Graphers/Browsers are available?
-
- Search for \[#\] to get to question number # quickly.
-
- ----------------------------------------------------------------
- Subject: [7-1] How can I use the X Window System or other GUIs from Lisp?
-
- There are several GUI's and Lisp interfaces to the X Window System. Mailing
- lists for these systems are listed in the answer to question [4-7].
- Various vendors also offer their own interface-building packages.
-
- CLX provides basic Common Lisp/X functionality. It is a de facto standard
- low-level interface to X, providing equivalent functionality to XLib, but
- in Lisp. It is also a good source for comparing the foreign function calls
- in various Lisps. Does *not* depend on CLOS. Available free as part of the
- X release in the contrib directory. Also available by anonymous ftp from
- ftp.x.org:/contrib/ as the files CLX.Manual.tar.Z and CLX.R5.02.tar.Z.
- [Note: The new version of CLX for X11R6 can be found (untarred) in
- ftp.x.org:/pub/R6untarred/contrib/lib/CLX/ and includes some slight
- modifications for CLtL2 compatability. You can get it in tarred form
- from the CMU AI Repository, Lisp section.]
- Primary Interface Author: Robert W. Scheifler <rws@zermatt.lcs.mit.edu>
- Send bug reports to bug-clx@expo.lcs.mit.edu.
- The 232 page manual is available in /pub/R5untarred/mit/hardcopy/CLX
- (PostScript format) and /pub/R5untarred/mit/doc/CLX (Interleaf source).
-
- CLIM (Common Lisp Interface Manager) is a portable, graphical user
- interface toolkit originally developed by International Lisp
- Associates, Symbolics, and Xerox PARC, and now under joint development
- by several Lisp vendors, including Symbolics, Franz, Lucid, Illudium,
- and Harlequin. It is intended to be a portable successor of Symbolics
- UIMS (Dynamic Windows, Presentations Types). CLIM 2.0 also supports
- more traditional toolkit-style programming. It runs on Symbolics Lisp
- Machines; Allegro, Lucid, and Harlequin on several Unix platforms;
- Symbolics CLOE on 386/486 IBM PCs running Windows; and MCL on Apple
- Macintoshes. It is *not* free, and with the exception of
- Macintoshes, if it is available it can be purchased from the vendor
- of the Lisp system you are using. For the Macintosh version write
- to Illudium:
- Contact: Dennis Doughty - Doughty@ileaf.com
- or contact: Bill York - York@lucid.com
- Illidium has signed a distribution agreement for MCL CLIM with
- Lucid, so you can also get it from Lucid at sales@lucid.com,
- 415-329-8400. (Lucid also has a license to distribute MCL itself.)
- CLIM includes a general purpose grapher. The CLIM 2.0 SPECIFICATION
- is available by anonymous ftp from ftp.uu.net:/vendor/franz/clim/clim.ps.Z.
- To be added to the mailing list send mail to clim-request@bbn.com.
-
- CLUE (Common Lisp User-Interface Environment) is from TI, and extends CLX
- to provide a simple, object-oriented toolkit (like Xt) library that uses
- CLOS. Provides basic window classes, some stream I/O facilities, and a few
- other utilities. Still pretty low level (it's a toolkit, not widget
- library). Available free by anonymous ftp from csc.ti.com:/pub/clue.tar.Z
- Written by Kerry Kimbrough. Send bug reports to clue-bugs@dsg.csc.ti.com.
-
- CLIO (Common Lisp Interactive Objects) is a GUI from the people who created
- CLUE. It provides a set of CLOS classes that represent the standard
- components of an object-oriented user interface -- such as text, menus,
- buttons, scroller, and dialogs. It is included as part of the CLUE
- distribution, along with some packages that use it, both sample and real.
-
- Allegro Common Windows provides a front end to CLX. Uses CLOS.
- It is *not* free. Contact info@franz.com for more information.
- [Intellicorp's KEE4.0 comes with Common Windows also. They've
- implemented the CW spec to run on Lucid 4.0 on Sparcs, HP300/400s,
- HP700/800s, and IBM RS6000s. Contact tait@intellicorp.com for more
- information.]
-
- The LispWorks Toolkit is an extensible CLOS-based widget set that uses
- CLX and CLUE. The LispWorks programming environment has been written
- using the toolkit and includes: an Emacs-like editor, listener,
- debugger, profiler, and operating system shell; browsers/graphers for
- classes, generic functions, processes, windows, files, compilation
- errors, source code systems, and setting LispWorks parameters; and an
- interactive interface builder and complete online hypertext
- documentation. Contact: lispworks-request@harlqn.co.uk
-
- CLM (Common Lisp Motif) and GINA (Generic Interactive Application) and
- IB (Interface Builder). CLM runs Motif widgets in a separate C
- process, with minimal work on the Lisp side and communicates between C
- and Lisp using TCP sockets. Runs in Allegro CL, Sun CL, CMU CL, Lucid
- CL, and Symbolics Genera. GINA uses CLOS. Available free in the X
- contrib directory or by anonymous ftp from either
- ftp.x.org:/contrib (formerly export.lcs.mit.edu) or
- ftp.gmd.de:/gmd/gina [129.26.8.84]
- as the files CLM+GINA.README, CLM2.2.tar.Z and GINA2.2.tar.Z. CLM was
- written by Andreas Baecker <baecker@gmd.de>, GINA by Mike Spenke
- <spenke@gmd.de>, and IB by Thomas Berlage <berlage@gmd.de>.
- Contact Mike Spenke for more info. To be added to the mailing list,
- send a message to gina-users-request@gmd.de.
-
- EW (Express Windows) is intended to mimic Symbolics' Dynamic Windows user
- and programmer interfaces. It is available free in the Common Lisp
- Repository as
- ftp.cs.cmu.edu:/user/ai/lang/lisp/gui/ew/
- It is no longer under active development. Runs on Sun/Lucid, Franz
- Allegro, and Symbolics. Should port easily to other Lisps with CLX.
- Written by Andrew L. Ressler <aressler@oiscola.columbia.ncr.com>.
-
- Garnet is a large and flexible GUI. Lots of high-level features. Does
- *not* depend on CLOS, but does depend on CLX. Garnet (version 2.0 and
- after) is now in the public domain, and has no licensing restrictions,
- so it is available to all foreign sites and for commercial uses.
- Detailed instructions for obtaining it by anonymous ftp are available
- by anonymous ftp as
- a.gp.cs.cmu.edu:/usr/garnet/garnet/README [128.2.242.7]
- Garnet includes the Lapidiary interactive design tool, C32 constraint
- editor, spreadsheet object, Gilt Interface Builder, automatic display
- management, two widget sets (Motif look-and-feel and Garnet
- look-and-feel), support for gesture recognition, and automatic
- constraint maintenance, application data layout and PostScript
- generation. Runs in virtually any Common Lisp environment, including
- Allegro, Lucid, CMU, and Harlequin Common Lisps on Sun, DEC, HP,
- Apollo, IBM 6000, and many other machines. Garnet helps implement
- highly-interactive, graphical, direct manipulation programs for X/11
- in Common Lisp. Typical applications include: drawing programs
- similar to Macintosh MacDraw, user interfaces for expert systems and
- other AI applications, box and arrow diagram editors, graphical
- programming languages, game user interfaces, simulation and process
- monitoring programs, user interface construction tools, CAD/CAM
- programs, etc. Contact Brad Myers (bam@a.gp.cs.cmu.edu) for more
- information. Bug reports should be sent to garnet-bugs@cs.cmu.edu.
- Administrative questions should be sent to garnet@cs.cmu.edu or
- garnet-request@cs.cmu.edu. Garnet is discussed on the newsgroup
- comp.windows.garnet (which is gatewayed to garnet-users@cs.cmu.edu for
- those without access to netnews).
-
- LISP2WISH is a very simple demonstration of how to connect and
- communicate SYNCHRONOUSLY between a lisp process and a C process
- running a Tcl/Tk executable. The demo uses the vanilla 'wish'
- executable that is included with the Tcl/Tk distribution. Tcl/Tk is a
- very flexible system for building Graphical User Interfaces (GUIs),
- with the look-and-feel of Motif. One writes scripts in a high-level,
- C-like language, and an interpreter evaluates the commands and passes
- execution either to a built-in function (and there are many), or to
- your own C routines. Tcl/Tk is becoming increasingly popular because
- of its ease of use, and because it is freely distributable (even
- commercially, I believe). For more information on Tcl/Tk, look on the
- USENET newsgroup comp.lang.tcl, or get the distribution from the
- archive (listed below) or ftp.cs.berkeley.edu. The Tcl/Tk archive
- also has many user-contributed extensions which make Tcl/Tk even more
- desirable. Tcl/Tk was originally written by Dr. John Ousterhout, at
- Berkeley. LISP2WISH lets you make a window/menu/drawing interface for
- your lisp routines, where you can take advantage of all the stuff
- written for Tcl/Tk (and build your own!).
- LISP2WISH has only been tested under X-Windows and Lucid Common Lisp
- 4.0 and 4.1, but should work on other platforms that support Lucid
- (or Allegro) and Tcl/Tk. LISP2WISH is available at the Tcl/Tk archive
- harbor.ecn.purdue.edu:/pub/tcl/lisp2wish6.tar.gz,
- from the author through the WWW at the URL
- http://www.cis.upenn.edu/~kaye/home.html
- by anonymous ftp from
- ftp.cis.upenn.edu:/pub/kaye/lisp2wish6.tar.Z
- or in the GUI section of the Lisp Repository as
- ftp.cs.cmu.edu:/user/ai/lang/lisp/gui/lsp2wish/lsp2wish.tgz
- For more information, contact Jonathan Kaye <kaye@linc.cis.upenn.edu>.
-
- LispView is a GUI written at Sun that does not use CLX. Instead it
- converts Xlib.h directly into Lucid foreign function calls. It is intended
- to be fast and tight. Uses CLOS. Available for anonymous ftp from
- ftp.x.org:/contrib/lispview1.1 (formerly export.lcs.mit.edu) and
- xview.ucdavis.edu:/pub/XView/LispView1.1
- Includes a general-purpose 2D grapher library.
- Written by Hans Muller (hmuller@sun.com). Runs in Sun CL and Lucid CL.
- Direct questions about the source provision to lispview@Eng.Sun.Com.
-
- WINTERP (Widget INTERPreter) is an application development environment
- developed at HP. It enables the rapid prototyping of graphical
- user-interfaces through direct manipulation of user interface objects
- and their attached actions. WINTERP provides an interface to the X11
- toolkit (Xt) and the OSF/Motif widget set and a built-in RPC mechanism
- for inter-application communication. It includes an object-oriented
- 2.5D graphics and animation widget based on the Xtango path transition
- animation system, the XmGraph graph browser (with graph nodes as
- arbitrary WINTERP widgets), and GIF image support. The interpreter is
- based on David Betz's XLISP interpreter, which implements a small
- subset of Common Lisp and runs on PCs, IBM RS/6000, Decstation 3100s,
- HP9000s, Sun3, Sparcs, SGI, and NeXT. XLISP provides a simple
- Smalltalk-like object system, with OSF/Motif widgets as real XLISP
- objects -- they can be specialized via subclassing, methods added
- or altered, etc. WINTERP includes an interface to GNU-Emacs which
- allows code to be developed and tested without leaving the editor.
- WINTERP is a free-standing Lisp-based tool for setting up window
- applications. WINTERP is available free in X contrib directory, or
- by anonymous ftp from
- ftp.x.org:/contrib/devel_tools/
- as winterp-???.tar.gz (formerly export.lcs.mit.edu) where ??? is the
- version number. The current version is 2.03 (X11r6 support). If you
- do not have Internet access you may request the source code to be
- mailed to you by sending a message to winterp-source@netcom.com.
- The WWW home page for WINTERP is accessible via the URL
- http://www.eit.com/software/winterp/winterp.html
- or mirrored on
- file://ftp.x.org/contrib/devel_tools/winterp.html
- Contact Niels Mayer <mayer@netcom.com> for more information. To be
- added to the mailing list, send mail to winterp-request@netcom.com.
-
- YYonX is a port of the YY system to X windows. Runs in Lucid CL, Allegro
- CL, and Symbolics Genera. Supports kanjii. Developed at Aoyama Gakuin
- University. Available free by anonymous ftp from
- ftp.csrl.aoyama.ac.jp:/YY/
- Written by Masayuki Ida <ida@cc.aoyama.ac.jp>
-
- Picasso is a CLOS based GUI, and is available from
- postgres.berkeley.edu:/pub/Picasso-2.0
- toe.cs.berkeley.edu:/pub/picasso/
- It runs on DecStation 3100s, Sun3 (SunOs), Sun4 (Sparc), and Sequent
- Symmetry in Allegro CL. The file pub/xcl.tar.Z contains X-Common Lisp
- interface routines. Send mail to picasso@postgres.berkeley.edu for
- more information. [Picasso is no longer an actively supported system.]
-
- XIT (X User Interface Toolkit) is an object-oriented user interface
- development environment for the X Window System based on Common Lisp,
- CLOS, CLX, and CLUE. It has been developed by the Research Group
- DRUID at the Department of Computer Science of the University of
- Stuttgart (druid@informatik.uni-stuttgart.de) as a framework for
- Common Lisp/CLOS applications with graphical user interfaces for the X
- Window System. XIT contains user interface toolkits, including
- general building blocks and mechanisms for building arbitrary user
- interface elements and a set of predefined common elements (widgets),
- as well as high-level interactive tools for constructing, inspecting,
- and modifying user interfaces by means of direct manipulation.
- Although the system kernel is quite stable, XIT is still under active
- development. XIT can be obtained free by anonymous ftp from
- ftp.informatik.uni-stuttgart.de:/pub/xit/ [129.69.211.2]
-
- ----------------------------------------------------------------
- Subject: [7-2] What Graphers/Browsers are available?
-
- Most of the graphics toolkits listed above include graphers. In
- particular, CLIM, Lispworks, Garnet, and Lispview all include
- graphers. The ISI grapher used to be in fairly widely used, but the
- CLIM grapher seems to be overtaking it in popularity.
-
- A simple grapher like the one described in "Lisp Lore" by Bromeley and
- Lamson is available by anonymous ftp from
- ftp.csrl.aoyama.ac.jp:/graphers/
- as the file graphers.tar.Z.uu. It includes versions for CLX, Express
- Windows, NCW, CLUE, CLM/GINA, Common Windows, LispView, Winterp, CLIM
- and YY. Several implementations have a mouse sensitivity feature and
- others have implementation-specific features. A copy has been made
- available from the Lisp Utilities Repository. For further information,
- contact Masayuki Ida <ida@csrl.aoyama.ac.jp>.
-
- ----------------------------------------------------------------
- ;;; *EOF*
-
-