Languages such as Java, ML, Scheme, and Haskell provide automatic storage management, that is, garbage collection. The two fundamental operations performed on a garbagecollected h...
e data structures are abstractions of simple records and pointers. They impose a shape invariant, which is verified at compiletime and exploited to automatically generate code fo...
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...
We present a Standard ML library for writing programs that automatically adjust to changes to their data. The library combines modifiable references and memoization to achieve eff...
Umut A. Acar, Guy E. Blelloch, Matthias Blume, Rob...
Abstract. Current methods for solving games embody a form of “procedural rationality” that invites logical analysis in its own right. This paper is a brief case study of Backwa...