Sciweavers

MPC
2015
Springer

Notions of Bidirectional Computation and Entangled State Monads

8 years 7 months ago
Notions of Bidirectional Computation and Entangled State Monads
Abstract. Bidirectional transformations (bx) support principled consistency maintenance among data sources. Each data source corresponds to one perspective on a composite system, manifested by operations to ‘get’ and ‘set’ a view of the whole from that particular perspective. Bx are important in a wide range of settings, including databases, interactive applications, and model-driven development. We show that bx are naturally modelled in terms of mutable state; in particular, the ‘set’ operations are stateful functions. This leads naturally to considering bx that exploit other computational effects too, such as I/O, nondeterminism, and failure, all largely ignored in the bx literature to date. We present a semantic foundation for symmetric bidirectional transformations with effects. We build on the mature theory of monadic encapsulation of effects in functional programming, develop the equational theory and important combinators for effectful bx, and provide a prototype ...
Faris Abou-Saleh, James Cheney, Jeremy Gibbons, Ja
Added 15 Apr 2016
Updated 15 Apr 2016
Type Journal
Year 2015
Where MPC
Authors Faris Abou-Saleh, James Cheney, Jeremy Gibbons, James McKinna, Perdita Stevens
Comments (0)