{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,11]],"date-time":"2026-04-11T00:48:31Z","timestamp":1775868511300,"version":"3.50.1"},"reference-count":42,"publisher":"Association for Computing Machinery (ACM)","issue":"ICFP","license":[{"start":{"date-parts":[[2018,7,30]],"date-time":"2018-07-30T00:00:00Z","timestamp":1532908800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"DOI":"10.13039\/100000181","name":"Air Force Office of Scientific Research","doi-asserted-by":"publisher","award":["FA8655-13-1-3006"],"award-info":[{"award-number":["FA8655-13-1-3006"]}],"id":[{"id":"10.13039\/100000181","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"crossref","award":["EP\/K034413\/1"],"award-info":[{"award-number":["EP\/K034413\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/100010663","name":"European Research Council","doi-asserted-by":"publisher","award":["682315"],"award-info":[{"award-number":["682315"]}],"id":[{"id":"10.13039\/100010663","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2018,7,30]]},"abstract":"<jats:p>\n            Lenses are a popular approach to bidirectional transformations, a generalisation of the\n            <jats:italic>view update<\/jats:italic>\n            problem in databases, in which we wish to make changes to\n            <jats:italic>source<\/jats:italic>\n            tables to effect a desired change on a\n            <jats:italic>view<\/jats:italic>\n            . However, perhaps surprisingly, lenses have seldom actually been used to implement updatable views in databases. Bohannon, Pierce and Vaughan proposed an approach to updatable views called\n            <jats:italic>relational lenses<\/jats:italic>\n            , but to the best of our knowledge this proposal has not been implemented or evaluated to date. We propose\n            <jats:italic>incremental relational lenses<\/jats:italic>\n            , that equip relational lenses with change-propagating semantics that map small changes to the view to (potentially) small changes to the source tables. We also present a language-integrated implementation of relational lenses and a detailed experimental evaluation, showing orders of magnitude improvement over the non-incremental approach. Our work shows that relational lenses can be used to support expressive and efficient view updates at the language level, without relying on updatable view support from the underlying database.\n          <\/jats:p>","DOI":"10.1145\/3236769","type":"journal-article","created":{"date-parts":[[2018,7,31]],"date-time":"2018-07-31T19:41:18Z","timestamp":1533066078000},"page":"1-30","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":11,"title":["Incremental relational lenses"],"prefix":"10.1145","volume":"2","author":[{"given":"Rudi","family":"Horn","sequence":"first","affiliation":[{"name":"University of Edinburgh, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Roly","family":"Perera","sequence":"additional","affiliation":[{"name":"University of Edinburgh, UK \/ University of Glasgow, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"James","family":"Cheney","sequence":"additional","affiliation":[{"name":"University of Edinburgh, UK"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2018,7,30]]},"reference":[{"key":"e_1_2_2_1_1","volume-title":"Foundations of Databases","author":"Abiteboul Serge","unstructured":"Serge Abiteboul , Richard Hull , and Victor Vianu . 1995. Foundations of Databases . Addison Wesley . Serge Abiteboul, Richard Hull, and Victor Vianu. 1995. Foundations of Databases. Addison Wesley."},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1186632.1186634"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.entcs.2014.10.003"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/319628.319634"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2463676.2465294"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1142351.1142399"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/543613.543633"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594304"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2500365.2500586"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2676726.2677004"},{"key":"e_1_2_2_12_1","volume-title":"5th International Symposium, FMCO 2006","author":"Cooper Ezra","year":"2006","unstructured":"Ezra Cooper , Sam Lindley , Philip Wadler , and Jeremy Yallop . 2006 . Links: Web Programming Without Tiers. In Formal Methods for Components and Objects , 5th International Symposium, FMCO 2006 , Amsterdam, The Netherlands , November 7-10, 2006, Revised Lectures. 266\u015b296. Ezra Cooper, Sam Lindley, Philip Wadler, and Jeremy Yallop. 2006. Links: Web Programming Without Tiers. In Formal Methods for Components and Objects, 5th International Symposium, FMCO 2006, Amsterdam, The Netherlands, November 7-10, 2006, Revised Lectures. 266\u015b296."},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/971697.602300"},{"key":"e_1_2_2_14_1","unstructured":"C. J. Date. 2012. View updating and relational theory. O\u2019Reilly.  C. J. Date. 2012. View updating and relational theory. O\u2019Reilly."},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/319732.319740"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2011.10.1.a6"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2010.5447896"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1232420.1232424"},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-32202-0_1"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/69.599937"},{"key":"e_1_2_2_21_1","volume-title":"Maintenance of Materialized Views: Problems, Techniques, and Applications","author":"Gupta Ashish","year":"1995","unstructured":"Ashish Gupta and Inderpal Singh Mumick . 1995. Maintenance of Materialized Views: Problems, Techniques, and Applications . IEEE Data Eng. Bull . 18, 2 ( 1995 ), 3\u015b18. http:\/\/sites.computer.org\/debull\/95JUN-CD.pdf Ashish Gupta and Inderpal Singh Mumick. 1995. Maintenance of Materialized Views: Problems, Techniques, and Applications. IEEE Data Eng. Bull. 18, 2 (1995), 3\u015b18. http:\/\/sites.computer.org\/debull\/95JUN-CD.pdf"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594324"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00778-017-0486-1"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1863543.1863573"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1926385.1926428"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/2103656.2103715"},{"key":"e_1_2_2_27_1","unstructured":"R. Horn R. Perera and J. Cheney. 2018. Incremental Relational Lenses. ArXiv e-prints (July 2018). arXiv: cs.PL\/1807.01948  R. Horn R. Perera and J. Cheney. 2018. Incremental Relational Lenses. ArXiv e-prints (July 2018). arXiv: cs.PL\/1807.01948"},{"key":"e_1_2_2_28_1","volume-title":"Rosebrugh","author":"Johnson Michael","year":"2013","unstructured":"Michael Johnson and Robert D . Rosebrugh . 2013 . Delta Lenses and Opfibrations. ECEASST 57 (2013). http:\/\/journal.ub. tu-berlin.de\/eceasst\/article\/view\/875 Michael Johnson and Robert D. Rosebrugh. 2013. Delta Lenses and Opfibrations. ECEASST 57 (2013). http:\/\/journal.ub. tu-berlin.de\/eceasst\/article\/view\/875"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/3158129"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/2847538.2847544"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1807085.1807100"},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2902251.2902286"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.14778\/1687553.1687577"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1244381.1244386"},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1142473.1142552"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/69.91063"},{"key":"e_1_2_2_37_1","volume-title":"Database management systems (3. ed.)","author":"Ramakrishnan Raghu","unstructured":"Raghu Ramakrishnan and Johannes Gehrke . 2003. Database management systems (3. ed.) . McGraw-Hill . Raghu Ramakrishnan and Johannes Gehrke. 2003. Database management systems (3. ed.). McGraw-Hill."},{"key":"e_1_2_2_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/3009837.3009891"},{"key":"e_1_2_2_39_1","volume-title":"A Landscape of Bidirectional Model Transformations. GTTSE 5235","author":"Stevens Perdita","year":"2007","unstructured":"Perdita Stevens . 2007. A Landscape of Bidirectional Model Transformations. GTTSE 5235 ( 2007 ), 408\u015b424. Perdita Stevens. 2007. A Landscape of Bidirectional Model Transformations. GTTSE 5235 (2007), 408\u015b424."},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159876.1159884"},{"key":"e_1_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2723372.2735359"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2034773.2034825"},{"key":"e_1_2_2_43_1","volume-title":"Proceedings of the 5th International Workshop on Bidirectional Transformations, Bx 2016, co-located with The European Joint Conferences on Theory and Practice of Software, ETAPS 2016","author":"Zan Tao","year":"2016","unstructured":"Tao Zan , Li Liu , Hsiang-Shang Ko , and Zhenjiang Hu . 2016 . Brul: A Putback-Based Bidirectional Transformation Library for Updatable Views . In Proceedings of the 5th International Workshop on Bidirectional Transformations, Bx 2016, co-located with The European Joint Conferences on Theory and Practice of Software, ETAPS 2016 , Eindhoven, The Netherlands , April 8, 2016. 77\u015b89. http:\/\/ceur-ws.org\/Vol-1571\/paper_3.pdf Tao Zan, Li Liu, Hsiang-Shang Ko, and Zhenjiang Hu. 2016. Brul: A Putback-Based Bidirectional Transformation Library for Updatable Views. In Proceedings of the 5th International Workshop on Bidirectional Transformations, Bx 2016, co-located with The European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Eindhoven, The Netherlands, April 8, 2016. 77\u015b89. http:\/\/ceur-ws.org\/Vol-1571\/paper_3.pdf"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3236769","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3236769","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3236769","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T21:41:28Z","timestamp":1750282888000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3236769"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,7,30]]},"references-count":42,"journal-issue":{"issue":"ICFP","published-print":{"date-parts":[[2018,7,30]]}},"alternative-id":["10.1145\/3236769"],"URL":"https:\/\/doi.org\/10.1145\/3236769","relation":{},"ISSN":["2475-1421"],"issn-type":[{"value":"2475-1421","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,7,30]]},"assertion":[{"value":"2018-07-30","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}