ACM Home Page
Please provide us with feedback. Feedback
Editing by example
Full text PdfPdf (1.79 MB)
Source ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 7 ,  Issue 4  (October 1985) table of contents
Pages: 600 - 621  
Year of Publication: 1985
ISSN:0164-0925
Author
Robert P. Nix  Yale Univ., New Haven, CT
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 36,   Citation Count: 16
Additional Information:

abstract   references   cited by   index terms   review   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/4472.4476
What is a DOI?

ABSTRACT

An editing by example system is an automatic program synthesis facility embedded in a text editor that can be used to solve repetitive text editing problems. The user provides the editor with a few examples of a text transformation. The system analyzes the examples and generalizes them into a program that can perform the transformation to the rest of the user's text. This paper presents an overview of the design, analysis, and implementation of a practical editing by example system. It studies the problem of synthesizing a text processing program that generalizes the transformation implicitly described by a small number of input/output examples. A class of text processing programs called gap programs is defined and the problems associated with synthesizing them from examples are examined, leading to an efficient heuristic that provably synthesizes a gap program from examples of its input/output behavior. The editing by example system derived from this analysis has been embedded in a production text editor. By developing an editing by example system that solves a useful class of text processing problems, this work demonstrates that program synthesis is feasible in the domain of text editing.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
AHO, A. V., KERNIGHAN, B. W., AND WEINBERGER, P.J. AWK--A pattern matching and scanning language. Softw. Pract. Exper. 9, 4 (April 1979), 267-280.
 
2
ANGLUIN, D. Finding patterns common to a set of strings. J. Comput. Syst. Sci. 21 (1980), 46-62.
 
3
ANGLUIN, D., AND SMITH, C. A survey of inductive inference: theory and methods. Res. Rep. 250, Dep. Computer Science, Yale University, Oct. 1982.
 
4
BIERMANN, A. W., AND FELDMAN, J. A. A survey of results in grammatical inference. In Frontiers of Pattern Recognition, Academic Press, New York, 1972.
 
5
 
6
ELLIS, J. R., MISHKIN, N. W., NIX, R. P., AND WOOD, S.R. A BLISS programming environment. Res. Rep. 231, Dep. Computer Science, Yale University, June 1982.
 
7
ELLIS, J. R., MISHKIN, N. W., VAN LEUNEN, M.-C., AND WOOD, S.R. Tools: An environment for timeshared computing and programming. Softw. Pract. Exper. (Oct. 1983).
 
8
Fu, K. S., AND BOOTH, T.L. Grammatical inference: Introduction and survey, parts I and 2. IEEE Trans. Syst. Man, Cybern. SMC-5 (1975), 95-111 and 409-423.
 
9
GOLD, E.M. Language identification in the limit. Inf. Control 10 (1967), 447-474.
 
10
11
 
12
13
14
 
15
16
17
18
19
 
20
NIx, R.P. Editing by example. Ph.D. dissertation, Dep. Computer Science, Yale University, 1983; also appeared as Yale University Dep. Computer Science Res. Rep. 280.
21
 
22
NIX, R. P., AND MISHKIN, N.W. U Editor user's and programmer's manual. Internal memo., Dep. Computer Science, Yale University, 1983.
23
 
24
REES, J. A., AND ADAMS, N.I. T user's manual. Internal memo., Dep. Computer Science, Yale University, 1982.
25
 
26
 
27
SHINOHARA, T. Polynomial time inference of pattern languages and its application. In Proc. 7th IBM Syrup. Mathematical Foundations of Computer Science, 1982.
 
28
SMITH, D.C. Pygmalion: A computer program to model and stimulate creative thought. Ph.D. dissertation, Computer Science Dep., Stanford University, 1975; also appeared as AIM-260, June 1975, and as a book from Birkbauser Verlag, 1977.
29
30
31

CITED BY  16


REVIEW

"Hans J. Schneider : Reviewer"

An editing by example system is an automatic program synthesis facility, embedded in a text editor, that can be used to solve repetitive text editing problems. The system analyzes a few examples the user provides it with and generalizes them int  more...