Metamouse: specifying graphical procedures by example

Metamouse is a device enabling the user of a drawing program to specify graphical procedures by supplying example execution traces. The user manipulates objects directly on the screen, creating graphical tools where necessary to help make constraints explicit; the system records the sequence of actions and induces a procedure. Generalization is used both to identify the key features of individual program steps, disregarding coincidental events; and to connect the steps into a program graph, creating loops and conditional branches as appropriate. Metamouse operates within a 2D click-and-drag drafting package, and incorporates a strong model of the relative importance of different types of graphical constraint. Close attention is paid to user interface aspects, and Metamouse helps the user by predicting and performing actions, thus reducing the tedium of repetitive graphical editing tasks.

[1]  Ian H. Witten,et al.  Inducing programs in a direct-manipulation environment , 1989, CHI '89.

[2]  D. Dennett The Intentional Stance. , 1987 .

[3]  Carl H. Smith,et al.  Inductive Inference: Theory and Methods , 1983, CSUR.

[4]  Maureen C. Stone,et al.  Snap-dragging , 1986, SIGGRAPH.

[5]  Brad A. Myers,et al.  Creating user interfaces by demonstration , 1988 .

[6]  Przemyslaw Prusinkiewicz,et al.  L.E.G.O. - AN INTERACTIVE GRAPHICS SYSTEM FOR TEACHING GEOMETRY AND COMPUTER GRAPHICS , 1986 .

[7]  Ian H. Witten,et al.  CONSTRAINT-SOLVING IN INTERACTIVE GRAPHICS A USER-FRIENDLY APPROACH , 1989 .

[8]  Daniel C. Halbert,et al.  Programming by Example , 2010, Encyclopedia of Machine Learning.

[9]  Daniel Thalmann,et al.  New Trends in Computer Graphics , 1988, Springer Berlin Heidelberg.

[10]  T. Kunii,et al.  Drawing Input Through Geometrical Constructions: Specification and Applications , 1988 .

[11]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

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

[13]  Eric A. Bier,et al.  Graphical search and replace , 1988, SIGGRAPH.

[14]  David Canfield Smith,et al.  Pygmalion: a creative programming environment. , 1975 .

[15]  R. M. White,et al.  Applying Direct Manipulation to Geometric Construction Systems , 1988 .

[16]  Peter van Sommers Drawing and cognition: References , 1984 .

[17]  Kurt VanLehn,et al.  Felicity conditions for human skill acquisition: validating an ai-based theory , 1983 .

[18]  Przemyslaw Prusinkiewicz,et al.  Geometric Modeling with Euclidean Constructions , 1988 .

[19]  Peter M. Andreae Justified generalization: acquiring procedures from examples , 1984 .

[20]  Richard C. Waters,et al.  The Programmer's Apprentice: a research overview , 1988, Computer.

[21]  Richard C. Waters,et al.  The programmer's apprentice , 1990, ACM Press frontier series.

[22]  Ian H. Witten,et al.  PROGRAMMING COMPUTER CONTROLLED SYSTEMS BY NON-EXPERTS , 1987 .

[23]  Peter van Sommers,et al.  Drawing and cognition: Frontmatter , 1984 .

[24]  A. Borning,et al.  Defining constraints graphically , 1986, CHI '86.

[25]  Kurt Van Lehn,et al.  Felicity conditions for human skill acquisition: validating an al-based theory , 1983 .