{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T08:23:45Z","timestamp":1770279825429,"version":"3.49.0"},"publisher-location":"Cham","reference-count":36,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783319197968","type":"print"},{"value":"9783319197975","type":"electronic"}],"license":[{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"DOI":"10.1007\/978-3-319-19797-5_9","type":"book-chapter","created":{"date-parts":[[2015,6,10]],"date-time":"2015-06-10T15:56:37Z","timestamp":1433951797000},"page":"187-214","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":6,"title":["Notions of Bidirectional Computation and\u00a0Entangled\u00a0State Monads"],"prefix":"10.1007","author":[{"given":"Faris","family":"Abou-Saleh","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"James","family":"Cheney","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jeremy","family":"Gibbons","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"James","family":"McKinna","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Perdita","family":"Stevens","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2015,6,9]]},"reference":[{"key":"9_CR1","doi-asserted-by":"crossref","unstructured":"Abou-Saleh, F., Cheney, J., Gibbons, J., McKinna, J., Stevens, P.: Notions of bidirectional computation and entangled state monads. Technical report, TLCBX project (2015), extended version with proofs, available from http:\/\/arxiv.org\/abs\/1505.02579","DOI":"10.1007\/978-3-319-19797-5_9"},{"key":"9_CR2","unstructured":"Abou-Saleh, F., McKinna, J.: A coalgebraic approach to bidirectional transformations (2014). Short presentation at CMCS"},{"key":"9_CR3","doi-asserted-by":"crossref","unstructured":"Brady, E.: Programming and reasoning with algebraic effects and dependent types. In: ICFP, pp. 133\u2013144. ACM (2013)","DOI":"10.1145\/2544174.2500581"},{"key":"9_CR4","unstructured":"Cheney, J., McKinna, J., Stevens, P., Gibbons, J., Abou-Saleh, F.: Entangled state monads (abstract). In: Terwilliger and Hidaka [33]"},{"key":"9_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"183","DOI":"10.1007\/978-3-642-19440-5_11","volume-title":"Software Language Engineering","author":"A Cicchetti","year":"2011","unstructured":"Cicchetti, A., Di Ruscio, D., Eramo, R., Pierantonio, A.: JTL: a bidirectional and change propagating transformation language. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 183\u2013202. Springer, Heidelberg (2011)"},{"key":"9_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"260","DOI":"10.1007\/978-3-642-02408-5_19","volume-title":"Theory and Practice of Model Transformations","author":"K Czarnecki","year":"2009","unstructured":"Czarnecki, K., Foster, J.N., Hu, Z., L\u00e4mmel, R., Sch\u00fcrr, A., Terwilliger, J.F.: Bidirectional transformations: a cross-discipline perspective. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 260\u2013283. Springer, Heidelberg (2009)"},{"issue":"6","key":"9_CR7","first-page":"1","volume":"10","author":"Z Diskin","year":"2011","unstructured":"Diskin, Z., Xiong, Y., Czarnecki, K.: From state- to delta-based bidirectional model transformations: the asymmetric case. JOT 10(6), 1\u201325 (2011)","journal-title":"JOT"},{"key":"9_CR8","unstructured":"Divi\u00e1nszky, P.: LGtk API correction, April 2013. http:\/\/people.inf.elte.hu\/divip\/LGtk\/CorrectedAPI.html"},{"key":"9_CR9","doi-asserted-by":"crossref","unstructured":"Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view update problem. In: POPL, pp. 233\u2013246. ACM (2005)","DOI":"10.1145\/1047659.1040325"},{"issue":"3","key":"9_CR10","doi-asserted-by":"publisher","first-page":"17","DOI":"10.1145\/1232420.1232424","volume":"29","author":"JN Foster","year":"2007","unstructured":"Foster, J.N., Greenwald, M.B., Moore, J.T., Pierce, B.C., Schmitt, A.: Combinators for bidirectional tree transformations: A linguistic approach to the view-update problem. ACM TOPLAS 29(3), 17 (2007). Extended version of [9]","journal-title":"ACM TOPLAS"},{"key":"9_CR11","doi-asserted-by":"crossref","unstructured":"Gibbons, J., Hinze, R.: Just do it: Simple monadic equational reasoning. In: ICFP, pp. 2\u201314. ACM (2011)","DOI":"10.1145\/2034574.2034777"},{"key":"9_CR12","doi-asserted-by":"publisher","first-page":"63","DOI":"10.1023\/A:1026158013113","volume":"40","author":"SJ Hegner","year":"2004","unstructured":"Hegner, S.J.: An order-based theory of updates for closed database views. Ann. Math. Art. Int. 40, 63\u2013125 (2004)","journal-title":"Ann. Math. Art. Int."},{"key":"9_CR13","doi-asserted-by":"crossref","unstructured":"Hofmann, M., Pierce, B.C., Wagner, D.: Symmetric lenses. In: POPL, pp. 371\u2013384. ACM (2011)","DOI":"10.1145\/1925844.1926428"},{"key":"9_CR14","doi-asserted-by":"crossref","unstructured":"Hofmann, M., Pierce, B.C., Wagner, D.: Edit lenses. In: POPL, pp. 495\u2013508. ACM (2012)","DOI":"10.1145\/2103621.2103715"},{"issue":"1\u20133","key":"9_CR15","doi-asserted-by":"publisher","first-page":"70","DOI":"10.1016\/j.tcs.2006.03.013","volume":"357","author":"M Hyland","year":"2006","unstructured":"Hyland, M., Plotkin, G.D., Power, J.: Combining effects: Sum and tensor. TCS 357(1\u20133), 70\u201399 (2006)","journal-title":"TCS"},{"key":"9_CR16","unstructured":"Johnson, M., Rosebrugh, R.: Spans of lenses. In: Terwilliger and Hidaka [33]"},{"key":"9_CR17","unstructured":"Jones, M.P., Duponcheel, L.: Composing monads. Technical report RR-1004, DCS, Yale (1993)"},{"key":"9_CR18","doi-asserted-by":"crossref","unstructured":"Kagawa, K.: Compositional references for stateful functional programming. In: ICFP, pp. 217\u2013226 (1997)","DOI":"10.1145\/258949.258969"},{"key":"9_CR19","doi-asserted-by":"crossref","unstructured":"Kammar, O., Lindley, S., Oury, N.: Handlers in action. In: ICFP, pp. 145\u2013158. ACM (2013)","DOI":"10.1145\/2544174.2500590"},{"key":"9_CR20","unstructured":"Kmett, E.: lens-4.0.4 library. http:\/\/hackage.haskell.org\/package\/lens"},{"key":"9_CR21","doi-asserted-by":"crossref","unstructured":"Liang, S., Hudak, P., Jones, M.P.: Monad transformers and modular interpreters. In: POPL, pp. 333\u2013343 (1995)","DOI":"10.1145\/199448.199528"},{"key":"9_CR22","doi-asserted-by":"crossref","unstructured":"L\u00fcth, C., Ghani, N.: Composing monads using coproducts. In: ICFP, pp. 133\u2013144. ACM (2002)","DOI":"10.1145\/583852.581492"},{"key":"9_CR23","unstructured":"Macedo, N., Cunha, A., Pacheco, H.: Toward a framework for multidirectional model transformations. In: Terwilliger and Hidaka [33]"},{"issue":"1","key":"9_CR24","doi-asserted-by":"publisher","first-page":"55","DOI":"10.1016\/0890-5401(91)90052-4","volume":"93","author":"E Moggi","year":"1991","unstructured":"Moggi, E.: Notions of computation and monads. Inf. Comp. 93(1), 55\u201392 (1991)","journal-title":"Inf. Comp."},{"issue":"3\u20134","key":"9_CR25","first-page":"363","volume":"22","author":"T Mossakowski","year":"2010","unstructured":"Mossakowski, T., Schr\u00f6der, L., Goncharov, S.: A generic complete dynamic logic for reasoning about purity and effects. FAC 22(3\u20134), 363\u2013384 (2010)","journal-title":"FAC"},{"key":"9_CR26","unstructured":"OMG: MOF 2.0 Query\/View\/Transformation specification (QVT), version 1.1, January 2011. http:\/\/www.omg.org\/spec\/QVT\/1.1\/"},{"key":"9_CR27","doi-asserted-by":"crossref","unstructured":"Pacheco, H., Hu, Z., Fischer, S.: Monadic combinators for \u201cputback\u201d style bidirectional programming. In: PEPM, pp. 39\u201350. ACM (2014). http:\/\/doi.acm.org\/10.1145\/2543728.2543737","DOI":"10.1145\/2543728.2543737"},{"key":"9_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"342","DOI":"10.1007\/3-540-45931-6_24","volume-title":"Foundations of Software Science and Computation Structures","author":"G Plotkin","year":"2002","unstructured":"Plotkin, G., Power, J.: Notions of computation determine monads. In: Nielsen, M., Engberg, U. (eds.) FOSSACS 2002. LNCS, vol. 2303, pp. 342\u2013356. Springer, Heidelberg (2002)"},{"issue":"4","key":"9_CR29","first-page":"1","volume":"9","author":"GD Plotkin","year":"2013","unstructured":"Plotkin, G.D., Pretnar, M.: Handling algebraic effects. LMCS 9(4), 1\u201336 (2013)","journal-title":"LMCS"},{"key":"9_CR30","unstructured":"Shkaravska, O.: Side-effect monad, its equational theory and applications (2005), seminar slides available at: http:\/\/www.ioc.ee\/~tarmo\/tsem05\/shkaravska1512-slides.pdf"},{"issue":"1","key":"9_CR31","first-page":"7","volume":"9","author":"P Stevens","year":"2010","unstructured":"Stevens, P.: Bidirectional model transformations in QVT: Semantic issues and open questions. SoSyM 9(1), 7\u201320 (2010)","journal-title":"SoSyM"},{"key":"9_CR32","unstructured":"Stevens, P., McKinna, J., Cheney, J.: \u2018Composers\u2019 example (2014). http:\/\/bx-community.wikidot.com\/examples:composers"},{"key":"9_CR33","unstructured":"Terwilliger, J., Hidaka, S. (eds.): BX Workshop (2014). http:\/\/ceur-ws.org\/Vol-1133\/#bx"},{"key":"9_CR34","unstructured":"TLCBX Project: A theory of least change for bidirectional transformations (2013\u20132016). http:\/\/www.cs.ox.ac.uk\/projects\/tlcbx\/, http:\/\/groups.inf.ed.ac.uk\/bx\/"},{"key":"9_CR35","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"410","DOI":"10.1007\/11880240_29","volume-title":"Model Driven Engineering Languages and Systems","author":"D Varr\u00f3","year":"2006","unstructured":"Varr\u00f3, D.: Model transformation by example. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 410\u2013424. Springer, Heidelberg (2006)"},{"issue":"5","key":"9_CR36","first-page":"515","volume":"23","author":"J Voigtl\u00e4nder","year":"2013","unstructured":"Voigtl\u00e4nder, J., Hu, Z., Matsuda, K., Wang, M.: Enhancing semantic bidirectionalization via shape bidirectionalizer plug-ins. JFP 23(5), 515\u2013551 (2013)","journal-title":"JFP"}],"container-title":["Lecture Notes in Computer Science","Mathematics of Program Construction"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-19797-5_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,11,2]],"date-time":"2022-11-02T19:47:32Z","timestamp":1667418452000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-319-19797-5_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"ISBN":["9783319197968","9783319197975"],"references-count":36,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-19797-5_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2015]]},"assertion":[{"value":"9 June 2015","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}