Object-oriented programs often require large heaps to run properly or meet performance goals. They use high-overhead collections, bulky data models, and large caches. Discovering t...
We present a new approach for constructing and verifying higherorder, imperative programs using the Coq proof assistant. We build on the past work on the Ynot system, which is bas...
Adam J. Chlipala, J. Gregory Malecha, Greg Morrise...
The next generation of online reference works will require structured representations of their contents in order to support scholarly functions such as semantic search, automated ...
Generalization tasks are important for continual improvement to the design of an evolving code base, eliminating redundancy where it has accumulated. An important step in generali...
Software developers are frequently required to address evolving stakeholder concerns, which often result in changes to the source code of an application. Manually performing invas...