Graphic Editing of Structured Text

Emily, the system described in this paper, is an interactive syntax-controlled system for creation and manipulation of program texts. This system uses the syntax of the programming language to impose a tree structure on programs in the language. A program begins as a single non-terminal symbol. For each non-terminal Emily presents all the syntax rules that define replacements for that non-terminal. In general, the replacement string consists of characters and non-terminals. By selecting appropriate rules, the user builds the program he desires. Because the editor retains the tree structure of the text, the text can be manipulated in terms of its structural units. Emily can represent any structural element by a single identifier, so that the user can view his text at any level of complexity. As a hybrid of string and tree representations, this display technique provides a new way of looking at and thinking about programs.

[1]  John C. Reynolds COGENT--PROGRAMMING MANUAL , 1965 .

[2]  Douglas C. Engelbart,et al.  A research center for augmenting human intellect , 1968, AFIPS Fall Joint Computing Conference.

[3]  John Allen,et al.  THOR: a display based time sharing system , 1967, AFIPS '67 (Spring).

[4]  Ivan E. Sutherland,et al.  Sketchpad a Man-Machine Graphical Communication System , 1899, Outstanding Dissertations in the Computer Sciences.

[5]  Harvey Bratman,et al.  Program composition and editing with an on-line display , 1899, AFIPS '68 (Fall, part II).

[6]  Duncan Ewing,et al.  DIALOG: a conversational programming system with a graphical orientation , 1967, CACM.