Enhancing semantic bidirectionalization via shape bidirectionalizer plug-ins

Janis Voigtländer, Zhenjiang Hu, Kazutaka Matsuda, Meng Wang

Research output: Contribution to journalArticlepeer-review

12 Citations (Scopus)

Abstract

Matsuda et al. (Matsuda, K., Hu, Z., Nakano, K., Hamana, M. & Takeichi, M. (2007) Bidirectionalization transformation based on automatic derivation of view complement functions. In Proceedings of the International Conference on Functional Programming. ACM Press, pp. 47-58) and Voigtl̈ander (Voigtl̈ander, J. (2009) Bidirectionalization for free! In Proceedings of Principles of Programming Languages. ACM Press, pp. 165-176) have introduced two techniques that given a sourceto-view function provide an update propagation function mapping an original source and an updated view back to an updated source, subject to standard consistency conditions. Previously, we developed a synthesis of the two techniques, based on a separation of shape and content aspects (Voigtl̈ander, J., Hu, Z., Matsuda, K. & Wang, M. (2010) Combining syntactic and semantic bidirectionalization. In Proceedings of the International Conference on Functional Programming. ACM Press, pp. 181-192). Here we carry that idea further, reworking the technique of Voigtl̈ander such that any shape bidirectionalizer (based on the work of Matsuda et al. (2007) or not) can be used as a plug-in, to good effect. We also provide a data-type-generic account, enabling wider reuse, including the use of pluggable bidirectionalization itself as a plug-in.

Original languageEnglish
Pages (from-to)515-551
Number of pages37
JournalJournal of Functional Programming
Volume23
Issue number5
DOIs
Publication statusPublished - 2013 Sept
Externally publishedYes

ASJC Scopus subject areas

  • Software

Fingerprint

Dive into the research topics of 'Enhancing semantic bidirectionalization via shape bidirectionalizer plug-ins'. Together they form a unique fingerprint.

Cite this