Reflections on monadic lenses

Faris Abou-Saleh, James Cheney*, Jeremy Gibbons, James McKinna, Perdita Stevens

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingChapter

9 Citations (Scopus)


Bidirectional transformations (bx) have primarily been modeled as pure functions, and do not account for the possibility of the side-effects that are available in most programming languages. Recently several formulations of bx that use monads to account for effects have been proposed, both among practitioners and in academic research. The combination of bx with effects turns out to be surprisingly subtle, leading to problems with some of these proposals and increasing the complexity of others. This paper reviews the proposals for monadic lenses to date, and offers some improved definitions, paying particular attention to the obstacles to naively adding monadic effects to existing definitions of pure bx such as lenses and symmetric lenses, and the subtleties of equivalence of symmetric bidirectional transformations in the presence of effects.

Original languageEnglish
Title of host publicationA List of Successes that can Change the World
Subtitle of host publicationEssays Dedicated to Philip Wadler on the Occasion of his 60th Birthday
EditorsSam Lindley, Conor McBride, Phil Trinder, Don Sannella
Number of pages31
ISBN (Electronic)9783319309361
ISBN (Print)9783319309354
Publication statusPublished - 25 Mar 2016

Publication series

NameLecture Notes in Computer Science
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)


Dive into the research topics of 'Reflections on monadic lenses'. Together they form a unique fingerprint.

Cite this