Pipeline, Delta, and Black Hole are three simple patterns used in concurrent software design. We recently presented these and other patterns for parallelism at a nine-hour worksho...
Matthew C. Jadud, Jon Simpson, Christian L. Jacobs...
Separation Logic is a sub-structural logic that supports local reasoning for imperative programs. It is designed to elegantly describe sharing and aliasing properties of heap struc...
This paper describes a Java-based framework for the development of componentbased software systems supporting the specification of the logic of component interactions as a first-c...
Antonio Natali, Enrico Oliva, Alessandro Ricci, Mi...
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...
Peer assessment is a technique that has been successfully employed in a variety of academic disciplines, and which is considered to be effective in developing student’s higher c...