1. The Grasper-CL (Trademark) Graph Management System
- Author
-
SRI INTERNATIONAL MENLO PARK CA ARTIFICIAL INTELLIGENCE CENTER, Karp, Peter D., Lowrance, John D., Strat Sr.,, Thomas M., Wilkins Sr., David E., SRI INTERNATIONAL MENLO PARK CA ARTIFICIAL INTELLIGENCE CENTER, Karp, Peter D., Lowrance, John D., Strat Sr.,, Thomas M., and Wilkins Sr., David E.
- Abstract
Graphs are virtually ubiquitous in programming applications. Moreover, graph-structured information is especially prevalent in AI applications, and in the COMMON LISP system itself. We can enhance programs that manipulate graph-structured information by providing these programs with graphical user interfaces that draw graphs, and that allow users to interact with drawings of graph nodes and edges. Therefore, it follows that a programming tool that supports the construction of graph-based user interfaces is a desirable component of a modern COMMON LISP programming environment. Grasper-CL is a COMMON LISP system for manipulating and displaying graphs, and for building graph-based user interfaces for application programs. The system represents a significant advance over previous COMMON LISP graphers because each level of the Grasper-CL architecture - from the core graph data structures to the interactive display module - has been fully developed and articulated, and is accessible to application programmers. We call this system organization an open architecture. In our experience, several different classes of graph-based user interfaces exist. For example, one class produces static drawings of graphs, whereas another class requires extensive user interaction with graph drawings. The open architecture of Grasper-CL supports the development of all classes of interfaces, whereas previous graphers support only one or two classes of interfaces. Grasper-CL graphics operations are implemented using CLIM, the COMMON LISP Interface Manager. Section of this paper elaborates on the motivations for wanting a system that supports the development of graph-based user interfaces within the COMMON LISP programming environment. Section 3 introduces the architecture of Grasper-CL. Section 4 presents the different classes of graph-based user interfaces. Sections 5 through 8 provide more detailed descriptions of the five levels of the Grasper-CL architecture., Submitted for publication to the journal Lisp and Symbolic Computation.
- Published
- 1993