Editing as a paradigm for user interaction (small talk, object-oriented, syntax-directed)

Jeffrey Scofield · 1985

The most difficult part of the programming task is often the creation of the component for interacting with the person who will use the program. This component is called the user interface. This dissertation describes the design of a framework for high-quality, highly interactive interfaces for all parts of a system. The uniformity, extensibility, and flexibility of this framework guarantee the existence of nearly identical user interfaces for all objects, automatically provide a means of interacting with new objects, and allow new interfaces to be built easily, when necessary, from a set of standard components. The user interfaces of this system are based on the natural and responsive principles of the screen-oriented editor, generalized to allow interactions with objects of all types. Editors use structural information to control the editing process, which allows them to guarantee that edited objects are well formed, while assisting the user with structural details. The editors are designed as interfaces to an object-oriented system. Furthermore, editors themselves are built using a set of cooperating objects and types (corresponding to Smalltalk classes). In particular, the syntactic descriptions of valid object structures are implemented as direct extensions to the type system. The dissertation includes a detailed design and examples of interaction with many types of objects. The design has been tested by means of a prototype implementation in Lisp, running on a standard timesharing system, from which the examples are drawn. The dissertation concludes with a discussion of the experience derived from this implementation, followed by suggestions for improvements and further research.

Read the paper · More papers on PaperTik