Graduation date: 2015The problem of supporting more advanced selective undo operations has received a lot\ud of attention. However, selective undo is generally missing in commonly used editors.\ud Moreover, partial selective undo, the ability of undoing just part of some edit so that other\ud edits may be undone, is not supported at all. We observe that a fundamental obstacle is\ud the lack of a more flexible and compositional edit model. This project addresses this issue\ud and proposes the choice edit model, which is based on the representation provided by the\ud choice calculus. The central idea is to represent an edit through a choice that contains\ud the old and the new code as alternatives. Edits inherit properties from choices and ca...
This paper studies operations for creating new variants of a program that relate, in a well-defined ...
AbstractThe paper develops Editor, a language for manipulating semistructured documents, such as tho...
Self-modifying code is notoriously hard to understand and therefore very well suited to hide program...
Software modifications are often systematic—they consist of simi-lar, but not identical, program cha...
We address the problem of predicting edit completions based on a learned model that was trained on p...
A frequent programming pattern for small tasks, especially expressions, is to repeatedly evaluate th...
Abstract—Programmers often need to revert some code to an earlier state, or restore a block of code ...
Programmers make systematic edits—similar, but not identical changes to multiple places during softw...
textProgrammers make systematic edits—similar, but not identical changes to multiple places during s...
The class of operations known as “undo” has proven to be a valuable addition to most professional wo...
Abstract. Self-modifying code is notoriously hard to understand and therefore very well suited to hi...
AbstractThe number of possible refactorings is unlimited, so no tool vendor will ever be able to pro...
Programming by example (PBE) from computation traces is hard to realize because of the difficulty to...
The paper develops Editor, a language for manipulating semistructured documents, such as those typic...
Partial evaluation, or program specialization, is used when a variable is known to often hold one pa...
This paper studies operations for creating new variants of a program that relate, in a well-defined ...
AbstractThe paper develops Editor, a language for manipulating semistructured documents, such as tho...
Self-modifying code is notoriously hard to understand and therefore very well suited to hide program...
Software modifications are often systematic—they consist of simi-lar, but not identical, program cha...
We address the problem of predicting edit completions based on a learned model that was trained on p...
A frequent programming pattern for small tasks, especially expressions, is to repeatedly evaluate th...
Abstract—Programmers often need to revert some code to an earlier state, or restore a block of code ...
Programmers make systematic edits—similar, but not identical changes to multiple places during softw...
textProgrammers make systematic edits—similar, but not identical changes to multiple places during s...
The class of operations known as “undo” has proven to be a valuable addition to most professional wo...
Abstract. Self-modifying code is notoriously hard to understand and therefore very well suited to hi...
AbstractThe number of possible refactorings is unlimited, so no tool vendor will ever be able to pro...
Programming by example (PBE) from computation traces is hard to realize because of the difficulty to...
The paper develops Editor, a language for manipulating semistructured documents, such as those typic...
Partial evaluation, or program specialization, is used when a variable is known to often hold one pa...
This paper studies operations for creating new variants of a program that relate, in a well-defined ...
AbstractThe paper develops Editor, a language for manipulating semistructured documents, such as tho...
Self-modifying code is notoriously hard to understand and therefore very well suited to hide program...