16 Oct 2015

Relational Lenses: A Language for Updatable Views

http://www.cis.upenn.edu/~bcpierce/papers/dblenses-pods.pdf

data synchronizer
needs a means of determining an “update policy” that guides how view updates are reflected in the database
every expression can be read both (from left to right) as a view definition and (from right to left) as an update policy.
bi-directional programming language
one for extracting a view of some complex data structure, and
another for putting back an updated view into the original structure

the primitives of this language are based on standard relational operates

the view update problem is illustrated as follows: