Dependence graphs and memoization can be used to efficiently update the output of a program as the input changes dynamically. Recent work has studied techniques for combining the...
Umut A. Acar, Guy E. Blelloch, Matthias Blume, Kan...
We discuss aspects of inlining of virtual method invocations. First, we introduce a new method test to guard inlinings of such invocations, with a di erent set of tradeo s from the...
Java(X) is a framework for type refinement. It extends Java's type language with annotations drawn from an algebra X and structural subtyping in terms of the annotations. Each...
A bidirectional transformation consists of a function get that takes a source (document or value) to a view and a function put that takes an updated view and the original source b...
Bidirectional transformations provide a novel mechanism for synchronizing and maintaining the consistency of information between input and output. Despite many promising results o...