Abstracts - 2006
Greg Little & Robert Miller
Scripting is useful in these applications to automate repetitive tasks, and to record complicated procedures so that they can be repeated later (or shared with other people). Unfortunately, users must overcome several hurdles in order to write scripts:
Many people who use the applications mentioned above are not familiar with programming. Even those who are may not be familiar with the particular scripting language in use. And if they are, they still need to learn the API for the application. This learning curve is so high that many professional users of these applications do not know how to write scripts for them.
We propose Syntax-free Programming: a programming paradigm that eschews rigid syntax and strives to parse suggestive and loosely grammatical expressions. Consider the expression "left margin 2 inches" in the context of Microsoft Word. This expression suggests the idea of making the left margin of the current document 2 inches wide. It can be expressed in the formal syntax of Visual Basic as ActiveDocument.PageSetup.LeftMargin = InchesToPoints(2). A Syntax-free Programming system will try to automatically generate this code from the original expression.
Figure 1. Diagram depicting syntax free programming.
Using this approach, users face a smaller set of hurdles for writing scripts:
We have also prototyped an SFP system which understands the API for Microsoft Word. In this prototype, the expression "left margin 2 inches" generates the Visual Basic command: ActiveDocument.PageSetup.LeftMargin = InchesToPoints(2). We are investigating how to make this system most useful for end-users, since they are more likely to be familiar with the terminology in the user interface, rather than the terminology in the API, and these do not always coincide.
We are working to prototype an SFP system which understands the Java API, and explore the potential benefits this might have for writing Java code.
This work was supported in part by the National Science Foundation under award number IIS-0447800. Any opinions, findings, conclusions or recommendations expressed in this publication are those of the authors and do not necessarily reflect the views of the National Science Foundation.
 Michael Bolin, Matthew Webber, Philip Rha, Tom Wilson, and Robert C. Miller. "Automation and Customization of Rendered Web Pages." UIST 2005, pp. 163-172. Winner of best paper award.