The focus of this paper is the problem of Programming by Example reuse. A user may find the PBE-generated program useful but may need to either generalize it or modify it for a related yet different task. In the context of Programming by Example reuse poses even more complex issues. In the case of Word this is the level of Visual Basic. Manipulations by users are recorded as Visual Basic scripts.
Users assign scripts to keyboard commands or to user-defined toolbar commands.
The PBE representation chasm describes how difficult it is for users to comprehend the mapping between the GUI and the Programming level. For the end-user with no previous exposure to programming in general or to programming in Visual Basic this transition may be too complex and result in frustration. As a consequence, the user may just give up on the idea of end-user programming and continue to solve their original problem manually again and again for years. Analogies are powerful cognitive mechanisms that people use to construct new knowledge from knowledge already acquired and understood. When analogies are used with PBE, the result is a new end-user programming paradigm combining the elegance of PBE to create programs with the power of analogies to reuse programs.