Sciweavers

ICFP
2010
ACM

Matching lenses: alignment and view update

14 years 1 months ago
Matching lenses: alignment and view update
Bidirectional programming languages are a practical approach to the view update problem. Programs in these languages, called lenses, define both a view and an update policy--i.e., every program can be read as a function mapping sources to views as well as one mapping updated views back to updated sources. One thorny issue that has not received sufficient attention in the design of bidirectional languages is alignment. In general, to correctly propagate an update to a view, a lens needs to match up the pieces of the view with the corresponding pieces of the underlying source, even after data has been inserted, deleted, or reordered. However, existing bidirectional languages either support only simple strategies that fail on many examples of practical interest, or else propose specific strategies that are baked deeply into the underlying theory. We propose a general framework of matching lenses that parameterizes lenses over arbitrary heuristics for calculating alignments. We enrich the...
Davi M. J. Barbosa, Julien Cretin, Nate Foster, Mi
Added 09 Nov 2010
Updated 09 Nov 2010
Type Conference
Year 2010
Where ICFP
Authors Davi M. J. Barbosa, Julien Cretin, Nate Foster, Michael Greenberg, Benjamin C. Pierce
Comments (0)