Beyond Word Processing: The Online Text System

Source: David Casseres, "Beyond Word Processing: The Online Text System" (3 October 1979)-- in "The Macintosh Project: Selected Papers from Jef Raskin (First Macintosh Designer), Circa 1979," document 21, version 0.
Location: M1007, Apple Computer Inc. Papers, Series 3, Box 10, Folder 1.


The purpose of this paper is to stir up some interest in the possibility of an Apple implementation of a unique and powerful personal computer tool, the Online Text System (OTS).

OTS is a personal system for entering, editing, and studying text. It differs radically from today's concepts of "editors" and "word processors" as explained below, and is optimized for the user who wants to use text in large quantities as a primary intellectual tool.

As explained below under "History," the essential concepts presented here are not new. They have been implemented in a research prototype system and exhaustively tested in a work environment for several years by a team of up to twenty technical, clerical, management, and documentation people.

There is reason to think that someone besides me is thinking about implementing these ideas on a personal computer.

OTS is Not Another Word Processor

Most existing text processor fall into two categories:

Editors: Direct or indirect descendants of hacks developed (often decades ago) by programmers who needed to edit source code.

Word Processors: Elaborately integrated systems to be used by a clerical operator.

The proposed OTS is more like an editor than a word processor, in that it is to be operated personally by the creative worker. Also, it does not incorporate hard-copy formatting at all--this is done by any of a whole family of external processes with various specializations. All formatting done by OTS is screen formatting, and OTS is heavily optimized for this.

For example, while almost all editors and word processors are at least partly line-oriented, OTS is line-ignorant. It breaks statements into lines according to current display parameters, and does not store lines as such except when the user explicitly wants it to.


OTS is designed with large, complex texts in mind. The problem in dealing with such texts on a screen is the difficulty of orienting oneself to the structure and content of the text. When you try to study, you get lost very quickly. Anyone who has tried this can understand the problem. It has never been addressed in a meaningful way by any production text system.

OTS does address this problem. By letting hard-copy formatting be an external function, OTS is able to have a study function as well as the traditional capture and modification functions of an editors. The same features that optimize OTS for studying the text also optimize it for ultra-efficient editing (since study is a key part of editing).

Existing systems treat the computer as a tool for developing hard copy, under the assumption that hard copy is THE medium for text. Such systems are based on partial simulation of hard copy on the CRT. OTS treats the computer/CRT as a new medium for text in its own right.

Text Structure

The key idea of OTS is that a text has an implicit structure which is known to the system. The structures used is the classic tree. Nodes in the tree are called "statements," and the content of a statement can be any string. Typically, an OTS statement is used to contain a paragraph, a heading, or a source-language statement....

The tree structure is chosen because it is natural for both documents and computers. It is also an easy structure to understand. Writers who use it as an organizing principle soon learn to love it, and documents written this way are merely obeying the ancient high-school teaching: start by making an outline. It is not limiting, since the user is perfectly free to write all statements at the first level. This result is a "conventional" structure, i.e. linear.

Using a system of this kind to develop and study the source code of a large program written in a block-structured language is a revelation. Moreover, it turns out that if you use such a program as an editor for developing large source codes, it encourages structured programming....

Human Interface

The success of any OTS implementation depends critically on the beauty of its human interface. The interface must feel extremely responsive. Speed of human input and speed of system response are both important.

Human input is of two kind: command mnemonics and cursor positioning.

Cursor positioning is done by means of an analog device such as a joystick, forcestick, graphics pad, or mouse. Cursor control keys are absolutely not adequate, and it is critically important to make cursor positioning as easy as possible.

It is desireable to have two control buttons available on the cursor-positioning device: one is used for a "command accept" function, and the other for "command delete."

Most command mnemonics are single characters, and the command set is tree-structured....


Who knows? My own position has always been that the potential market for this kind of tool is far, far greater than anyone has yet guessed--at least if it is as cheap as it now can be. Many of the capabilities have to be used to be fully appreciated, and my guess is that to sell as full-dressed OTS (or even half-dressed) would require some serious educational efforts. The implication is that if an OTS is worth doing, it's worth doing right.


At the 1967 (?) Fall Joint Computer Conference in San Francisco, Dr. D. C. Engelbart of SRI presented a system called NLS (for oN-Line System). NLS was presented as a tool of very wide scope for "augmenting the human intellect," but in its specifics it was a system for editing and viewing text information. It offered the individual text-oriented worker far more power than anything before or since....

The engineering that went into NLS was extremely impressive. For example, the "mouse" device was invented in connection with this project. Some of the technical people on the project were Bill English, Jeff Rulifson, Bill Parxton, Chuck Irby, Don Andrews, Dave Hopper, Bill Duvall, Mimi Church, and Bruce Parsley, many of whom later went to Xerox PARC.

At the time of its development, NLS was strictly a demonstration of concept, as far as any public beyond the ARPA community was concerned. It was very expensive to user, its human interface depended on then-exotic hardware, timesharing systems were unreliable and inefficient. The concept of computer text processing was not thought to involve anything better than justified margins on a Flexowriter. Eventually funding dried up, most of Engelbart's technical people went to Xerox PARC where they were forever walled up in ivory, and NLS was forgotten--by most people.

I was until 1969 the technical writer for the project, and have been carrying some of the ideas around ever since. I always thought it was a great pity that such a spectacular tool for writing and studying text was forgotten. It is now clear to me that future Apple systems are ideal for a modern descendant of NLS, optimized for an individual user. OTS is such a descendant, and I believe that if Apple does not eventually implement something like OTS, someone else will.

Document created on 10 March 2000;