mkant@a.gp.cs.cmu.edu (Mark Kantrowitz) (11/23/90)
Hope this file answers your question. Please send errors, additions, etc. to mkant+@cs.cmu.edu ;;; Sun Nov 18 13:39:30 1990 by Mark Kantrowitz <mkant@GLINDA.OZ.CS.CMU.EDU> ;;; cl-x-lisp-interfaces.text ;;; **************************************************************** ;;; Common Lisp/X Interfaces *************************************** ;;; **************************************************************** This file summarizes a variety of X/lisp toolkits. Most of them are free and publicly ftp'able. This list was originally posted on cl-windows by Steve Strassmann <straz@media-lab.media.mit.edu> (20 Jul 90). I've since added comments and additional information. (much of the latter came from posts by Greg Sandell <sandell@ferret.ils.nwu.edu>, and Barry Margolin <barmar@think.com>). ------------------------------------------------------------------------------ These are my notes on the various X/lisp toolkits. Any opinions expressed (especially the "rating") are purely my own, and in no way should be taken as gospel. Some of this info is out of date, so please double-check the facts before counting on them. As far as I can tell, all of these are intended to run under most unix implementations of Common Lisp. There is a general mailing list, cl-windows@sail.stanford.edu, for discussing window toolkits for commonlisp. ;;; ******************************** ;;; CLX **************************** ;;; ******************************** CLX provides basic Common Lisp/X functionality. It has quickly become the de facto standard interface with XLib. Of course, it is probably too low-level for easy creation of user interfaces (i.e., most C programmers use toolkits built on top of XLib). For things like menus and other high-level constructs, you probably want one of the toolkits described below, which are built on top of CLX. CLX provides its own set of data structures that parallel the C structures. From TI and MIT. Uses: structures (does *not* use CLOS) Available: free, part of standard X release, in contrib dir. Current versions of CLX may be obtained by ftp to csc.ti.com (128.247.159.141), grabbing the files pub/clx.tar or pub/clx/tar.Z (the latter being compressed). Documentation is in pub/clxman/doc.tar.Z (ascii) or pub/clxman/ps.tar.Z (postscript). Updated versions may also be available from expo.lcs.mit.edu (18.30.0.212).(?) in /contrib. Bug reports: bug-clx@expo.lcs.mit.edu Latest version: 4.3 Rating: Stable, seems mature, low-level ;;; ******************************** ;;; CLIM *************************** ;;; ******************************** Common Lisp Interface Manager, developed by International Lisp Associates. Previously known as Y windows. Implements a portable user interface management system that can be run over any window system. They're currently working with people at Xerox who're developing an object-oriented scheme for generic interfacing to different window systems to reimplement CLIM using that underlying facility. Xerox, Lucid and Symbolics are working with ILA to develop CLIM as a standard for object-oriented I/O routines in Lisp. It will offer a hardware and software independent high level UIMS which can run on top of any (of the supported) X-window implementations. The target operating and window systems are: Genera, Open Look, MS Windows, Presentation Manager, and SUN's implementation of X. They may also be doing a Macintosh implementation. It uses CLOS functions to talk to the X-window and other window substrates directly. It is fairly high level, and includes a constraint language. It is intended to be a portable analogue of Symbolics UIMS (Dynamic Windows, Presentations Types). Contact: ILA, 617-576-1151, Cambridge, MA. or doughty@fuji.ila.dialnet.symbolics.com Rating: language seems stable and well-designed, but I haven't gotten a beta copy yet. Users Group: clim@bbn.com, clim-request@bbn.com ;;; ******************************** ;;; CLUE *************************** ;;; ******************************** Common Lisp User-Interface Environment. From TI, extends CLX. 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). Documentation: just a specification/reference manual Uses: CLX and PCL (CLOS) Available: free, runs on X11 Anonymous ftp from CSC.TI.COM, (10.7.0.46) in pub/clue.tar.Z. Bug Reports: clue-bugs@dsg.csc.ti.com Users Group: clue-review@dsg.csc.ti.com Requests: clue-review-request@dsg.csc.ti.com Author: Kerry Kimbrough <Kimbrough@dsg.csc.ti.com> Latest version: 7.1 Rating: Seems to be popular ;;; ******************************** ;;; Common Windows ***************** ;;; ******************************** Allegro's Common Windows Provides a front end to CLX, and seems to be a powerful tool. Feels like the Interlisp-D windowing functions. Uses CLOS, but isn't fully integrated yet. This product is in pilot release. Available with it is a package called Composer, a window-level debugger/profiler, but it's "slow as molasses, even on a sparcstation," someone said. It is unclear whether it only runs on Allegro, or is portable. (There have been reports of its crashing with TWM. There shouldn't be any problems with TWM version 5.31 4/26/89 and ACW version 3.0.1 and later.) ;;; ******************************** ;;; CLM/GINA *********************** ;;; ******************************** CLM uses CLX and Motif; Gina (Generic Interactive Application) is built over CLM and CLOS. IB (Interface Builder) requires Gina. Runs all Motif widgets in a separate C process, with minimal work on the lisp side. Communicates between C and Lisp using TCP sockets. Runs in Allegro Common Lisp 3.1, Sun Common Lisp 4.0 + CLX X11R3 or a Symbolics Lispm with Genera. Available: free, part of standard X release, in contrib dir. Contact: Andreas Baecker (gmdzi!baecker@uunet.uu.net) GMD (Gesellschaft fuer Mathemathik und Datenverarbeitung mbH) (The German National Research Center for Computer Science) Schloss Birlinghoven, D-5205 Sankt Augustin 1, West Germany Also available via anonymous ftp from ~ftp/contrib on expo.lcs.mit.edu (18.30.0.212), files Clm.README.Z and Clm.tar.Z (~500k). (expo server unaccessible 9am-6pm). Author: Andreas Baecker GMD (German National Research Center for Computer Science) P.O. Box 1240 D-5205 Sankt Augustin 1 Federal Republic of Germany e-mail: baecker@gmdzi Phone: (022 41) 14 20 78 Latest version: 1.0.0 (CLM), Alpha (GINA) Rating: seems to be the fastest and most efficient, but inflexible (requires writing/using only motif widgets in C) ;;; ******************************** ;;; Express Windows (EW) *********** ;;; ******************************** Express Windows (EW). Intended to mimic Symbolics' Dynamic Windows user and programmer interfaces in Common Lisp using CLX. Runs as client to X11 servers. Common Lisp Ports (known): Sun/Lucid, Franz's Allegro, and Symbolics Should port to other CLs with CLX. Requires: CLX (X11R3/4), TCP/IP (Symbolics) Optional System(s) Used: CLOS (PCL) Author: Andrew L. Ressler <aressler@oiscola.columbia.ncr.com> Liszt Programming, Inc., PO Box 15447, Arlington VA. 22215 (301) 643-4526. Users Group: express-windows@atc.boeing.com Contact: express-windows-request@atc.boeing.com ;;; ******************************** ;;; Garnet ************************* ;;; ******************************** Garnet. Large system providing rapid and flexible design of UI. Includes constraints, object-oriented, doesn't use PCL. Developed at CMU, depends on CLX, runs on X11. Possibly will be ported to Mac? Available: free, ftp after signing copyright agreement Contact: Brad Myers (bam@a.gp.cs.cmu.edu) Users Group: garnet-users@cs.cmu.edu Bug Reports: garnet@cs.cmu.edu Rating: lots of high-level features ;;; ******************************** ;;; SOLO *************************** ;;; ******************************** SOLO Not generally available yet. Written at Sun. Doesn't use CLX, directly converts Xlib.h into lucid foreign calls. Intended to be small, fast, tight. Uses CLOS. Contact: rmori@Eng.Sun.COM (Robert Mori) Written by: Hans Muller (hmuller@sun.com) ;;; ******************************** ;;; WINTERP ************************ ;;; ******************************** WINTERP Widget Interpreter Developed at HP, uses the Xtoolkit + Motif widget set, runs on X11 It is a rapid prototyping, development, and delivery environment for applications using the OSF Motif user interface toolkit. WINTERP is based on David Betz's XLISP interpreter (comp.lang.lisp.x), which is a small subset of Common Lisp that runs on PC's. WINTERP makes extensive use of XLISP's Smalltalk-like extensions for object oriented programming: All the Motif widget classes are actually implemented as XLISP classes, Xtoolkit functions become methods on the widget base class. Motif "Convenience Functions" become methods on particular classes. Because Motif Classes look like normal XLISP classes inside WINTERP, you may extend the functionality of existing widget classes in Lisp via subclassing, or by adding new methods to existing widget classes. WINTERP should be portable to any unix system that can run Xwindows (with OSF Motif widgets) and TCP Sockets. WINTERP has been tested on HP9000s3xx (68030), HP9000s8xx (HP PA-RISC), and Sun 3's. Runs partly in separate XLisp process (a public domain Lisp) Available: free, part of standard X release, in contrib dir. Via anonymous ftp from expo.lcs.mit.edu:contrib/winterp.tar.Z Documentation: XLISP -- doc/xlisp.doc, doc/INFO2.0, doc/INFO2.1, doc/README.XLISP WINTERP -- doc/winterp.doc.raw Contact: Niels Mayer mayer@hplabs.hp.com, HP, Palo Alto,CA. Users Group: winterp@hplnpm.hpl.hp.com ;;; ******************************** ;;; YYonX ************************** ;;; ******************************** YYonX Port of the YY system to X windows, YY is a network oriented window toolkit for Common Lisp. Server-client model. CLOS oriented portable tool kit. Developed at Aoyama Gakuin University, runs on X11, Symbolics Genera, Lucid CL, and Allegro CL. Supports kanji. Tested mainly on Sun4 SunOS4.1 and X11R4. Available: free, Anonymous FTP from ftp.csrl.aoyama.ac.jp (133.2.1.5), cd YY Users Group: yyonx@csrl.aoyama.ac.jp Contact: yyonx-request@csrl.aoyama.ac.jp for requests Author: Masayuki Ida, ida@cc.aoyama.ac.jp Computer Science Research Lab, Aoyama Gakuin University Latest version: 1.2 (11/5/1990) Sources are copyrighted, but may be freely used if acknowledged. Documentation is in the public domain. YY and CLIM are talking about a unified external specification. ;;; ******************************** ;;; Miscellaneous ****************** ;;; ******************************** Harlequin's LispWorks uses CLX as a low-level interface to X, but uses CLUE as a higher-level toolkit for building human interfaces. A free evaluation copy of LispWorks is available by writing to lispworks-request@harlequin.co.uk. LeLisp has both C and X interfaces. Obvius (Object oriented image understanding system) is a software project at MIT to create a general purpose image processing utility in Lisp. It uses a homebrew interface to X11 (i.e., it does not use clx or clue). However, they eventually hope to port Obvius to a clx/clue platform. Contact bradley@demille.media.mit.edu for information. Picasso (graphic user interface, uses Franz Allegro CL) is available from postgres.berkeley.edu (128.32.149.1).
egdorf@zaphod.lanl.gov (Skip Egdorf) (11/25/90)
In article <11174@pt.cs.cmu.edu> mkant@a.gp.cs.cmu.edu (Mark Kantrowitz) writes: > ;;; ******************************** > ;;; SOLO *************************** > ;;; ******************************** > SOLO > > Not generally available yet. Written at Sun. Doesn't use CLX, > directly converts Xlib.h into lucid foreign calls. Intended to be > small, fast, tight. Uses CLOS. > > Contact: rmori@Eng.Sun.COM (Robert Mori) > Written by: Hans Muller (hmuller@sun.com) Sun Common Lisp 4.0 (Lucid 4.0 + Sun stuff) Includes the distribution version SOLO now called LispView. It is basically an interface to the C Xview library with a CLOS wrapper on top. Looks like a nice system! Now that Xview and OpenWindows have both been let out in source form to the world in general, how soon 'til we see the LispView source? Sun?? Listening??? Skip Egdorf hwe@lanl.gov
snicoud@ATC.BOEING.COM (Stephen L Nicoud) (11/30/90)
Date: 22 Nov 90 22:20:12 GMT From: mkant@a.gp.cs.cmu.edu (Mark Kantrowitz) Hope this file answers your question. Please send errors, additions, etc. to mkant+@cs.cmu.edu [...] There is a general mailing list, cl-windows@sail.stanford.edu, for discussing window toolkits for commonlisp. It's now cl-windows@mcc.com. [...] ;;; ******************************** ;;; Express Windows (EW) *********** ;;; ******************************** Express Windows (EW). Intended to mimic Symbolics' Dynamic Windows user and programmer interfaces in Common Lisp using CLX. Runs as client to X11 servers. Common Lisp Ports (known): Sun/Lucid, Franz's Allegro, and Symbolics Should port to other CLs with CLX. Requires: CLX (X11R3/4), TCP/IP (Symbolics) Optional System(s) Used: CLOS (PCL) Author: Andrew L. Ressler <aressler@oiscola.columbia.ncr.com> Liszt Programming, Inc., PO Box 15447, Arlington VA. 22215 (301) 643-4526. Users Group: express-windows@atc.boeing.com Contact: express-windows-request@atc.boeing.com Available: free, anonymous ftp from atc.boeing.com:/pub/ew/ Stephen -- Stephen L. Nicoud <snicoud@atc.boeing.com> uw-beaver!bcsaic!snicoud Boeing Advanced Technology Center for Computer Sciences