CMU Artificial Intelligence Repository
XPCE: Information about the XPCE object-oriented X-windows
XPCE is an object-oriented X-window interface toolkit for symbolic
programming languages (Prolog and Lisp), offering a high level of
abstraction for communication with X11, Unix processes, Unix
networking facilities (sockets) and Unix files. XPCE's built-in
classes (about 150) are mostly written in C. The XPCE/Prolog
interface allows the user to create and manipulate instances of these
classes. The user can also create new XPCE classes from Prolog.
XPCE's window related classes provide various styles of menus,
primitive graphical objects, compound graphical objects and Emacs
oriented programmable text manipulation windows. The distribution
contains several demo programs, including a diagram drawing tool
(PceDraw), an animation demo, an Epoch-like editor (PceEmacs), a graphical
interface to Unix ispell, and an online hyper-text manual for XPCE
This directory contains copies of the license agreement,
documentation, and a demo version. The non-demo versions (which
include source code) require signing a license agreement and
remitting a licensing fee to the University of Amsterdam (see info.txt).
A demo version of XPCE/SWI-Prolog for Linux may be
obtained in the linux/ subdirectory.
The non-demo versions (for SWI-Prolog, SICStus Prolog,
Lucid Common Lisp and LispWorks) require filling out a
license and paying a fee (see info.txt).
Ports: SWI-Prolog, SICStus, Quintus; or Lucid CL and Harlequin CL
X11 (R3, R4, or R5), Openwindows 2 and 3, OSF/Motif,
XFree 1.2 and 1.3.
CD-ROM: Prime Time Freeware for AI, Issue 1-1
Bug Reports: email@example.com
Mailing List: firstname.lastname@example.org
To be added to the mailing list send mail to
Author(s): Anjo Anjewierden, Jan Wielemaker
Contact: Department of SWI
University of Amsterdam
1018 WB Amsterdam
Authors!Anjewierden, Authors!Wielemaker, GUI!Lisp,
GUI!Prolog, Graphics, HCI, X-Windows, XPCE
The following documentation is included in the doc/ subdirectory on
the ftp site:
1. "Programming in PCE/Prolog"
Introduction in programming PCE/Prolog.
2. "PCE-4 Functional overview"
General overview of PCE's functionality.
3. "User Defined Classes Manual" (Draft)
Interface for defining PCE classes from Prolog.
4. "XPCE Reference Manual", (DRAFT Edition 0 for xpce-4.5.11)
Draft of the reference manual. Covering all of XPCE's
functionality, but still has many incomplete references,
unclear descriptions and typos.
5. "Interfacing PCE to a Programming Language"
Explains how PCE may be connected to another (symbolic)
programming language. This connection is established through C.
6. "PCE / Common Lisp Interface"
Interface definition between PCE and Lisp implementations
adhering to the Common Lisp standard (Steele II).
The postscript files have been broken down into 15-page chunks.
Last Web update on Mon Feb 13 10:34:22 1995