{"id":"https://openalex.org/W1992648627","doi":"https://doi.org/10.1017/s0956796812000354","title":"MRI: Modular reasoning about interference in incremental programming","display_name":"MRI: Modular reasoning about interference in incremental programming","publication_year":2012,"publication_date":"2012-10-11","ids":{"openalex":"https://openalex.org/W1992648627","doi":"https://doi.org/10.1017/s0956796812000354","mag":"1992648627"},"language":"en","primary_location":{"id":"doi:10.1017/s0956796812000354","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s0956796812000354","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/34D74AA93EA4EAAE23A30318EFBFF49D/S0956796812000354a.pdf/div-class-title-mri-modular-reasoning-about-interference-in-incremental-programming-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/34D74AA93EA4EAAE23A30318EFBFF49D/S0956796812000354a.pdf/div-class-title-mri-modular-reasoning-about-interference-in-incremental-programming-div.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5049714036","display_name":"Bruno C. d. S. Oliveira","orcid":"https://orcid.org/0000-0002-1846-7210"},"institutions":[{"id":"https://openalex.org/I165932596","display_name":"National University of Singapore","ror":"https://ror.org/01tgyzw49","country_code":"SG","type":"education","lineage":["https://openalex.org/I165932596"]}],"countries":["SG"],"is_corresponding":false,"raw_author_name":"BRUNO C. D. S. OLIVEIRA","raw_affiliation_strings":["School of Computing, National University of Singapore, Singapore (e-mail:","School of computing, national university of singapore, singapore (e-mail: oliveira@comp.nus.edu.sg)#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"School of Computing, National University of Singapore, Singapore (e-mail:","institution_ids":["https://openalex.org/I165932596"]},{"raw_affiliation_string":"School of computing, national university of singapore, singapore (e-mail: oliveira@comp.nus.edu.sg)#TAB#","institution_ids":["https://openalex.org/I165932596"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5050247934","display_name":"Tom Schrijvers","orcid":"https://orcid.org/0000-0001-8771-5559"},"institutions":[{"id":"https://openalex.org/I12607205","display_name":"HOGENT University of Applied Sciences and Arts","ror":"https://ror.org/00rs45z86","country_code":"BE","type":"education","lineage":["https://openalex.org/I12607205"]},{"id":"https://openalex.org/I32597200","display_name":"Ghent University","ror":"https://ror.org/00cv9y106","country_code":"BE","type":"education","lineage":["https://openalex.org/I32597200"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"TOM SCHRIJVERS","raw_affiliation_strings":["Department of Applied Mathematics and Computer ScienceGhent University, Ghent, Belgium (e-mail:","Department of applied mathematics and computer scienceghent university, ghent, belgium (e-mail: tom.schrijvers@ugent.be)#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Applied Mathematics and Computer ScienceGhent University, Ghent, Belgium (e-mail:","institution_ids":["https://openalex.org/I12607205","https://openalex.org/I32597200"]},{"raw_affiliation_string":"Department of applied mathematics and computer scienceghent university, ghent, belgium (e-mail: tom.schrijvers@ugent.be)#TAB#","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5029147559","display_name":"William R. Cook","orcid":"https://orcid.org/0000-0003-4918-8975"},"institutions":[{"id":"https://openalex.org/I86519309","display_name":"The University of Texas at Austin","ror":"https://ror.org/00hj54h04","country_code":"US","type":"education","lineage":["https://openalex.org/I86519309"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"WILLIAM R. COOK","raw_affiliation_strings":["Department of Computer Science, University of Texas at Austin, University Station, Austin, TX, USA (e-mail:","Department of computer science, university of texas at austin, university station, austin, tx, usa (e-mail: wcook@cs.utexas.edu)#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Department of Computer Science, University of Texas at Austin, University Station, Austin, TX, USA (e-mail:","institution_ids":["https://openalex.org/I86519309"]},{"raw_affiliation_string":"Department of computer science, university of texas at austin, university station, austin, tx, usa (e-mail: wcook@cs.utexas.edu)#TAB#","institution_ids":["https://openalex.org/I86519309"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":3.9145,"has_fulltext":true,"cited_by_count":14,"citation_normalized_percentile":{"value":0.9337568,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"22","issue":"6","first_page":"797","last_page":"852"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9972000122070312,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9894000291824341,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8470926284790039},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7333632707595825},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.674059271812439},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6488264799118042},{"id":"https://openalex.org/keywords/inheritance","display_name":"Inheritance (genetic algorithm)","score":0.5711425542831421},{"id":"https://openalex.org/keywords/genetic-programming","display_name":"Genetic programming","score":0.5008041858673096},{"id":"https://openalex.org/keywords/component","display_name":"Component (thermodynamics)","score":0.46712642908096313},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.46087151765823364},{"id":"https://openalex.org/keywords/reasoning-system","display_name":"Reasoning system","score":0.42118048667907715},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.41080546379089355},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.31264355778694153},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.28741711378097534}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8470926284790039},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7333632707595825},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.674059271812439},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6488264799118042},{"id":"https://openalex.org/C2780902518","wikidata":"https://www.wikidata.org/wiki/Q6033780","display_name":"Inheritance (genetic algorithm)","level":3,"score":0.5711425542831421},{"id":"https://openalex.org/C110332635","wikidata":"https://www.wikidata.org/wiki/Q629498","display_name":"Genetic programming","level":2,"score":0.5008041858673096},{"id":"https://openalex.org/C168167062","wikidata":"https://www.wikidata.org/wiki/Q1117970","display_name":"Component (thermodynamics)","level":2,"score":0.46712642908096313},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.46087151765823364},{"id":"https://openalex.org/C89288958","wikidata":"https://www.wikidata.org/wiki/Q7301504","display_name":"Reasoning system","level":2,"score":0.42118048667907715},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.41080546379089355},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.31264355778694153},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.28741711378097534},{"id":"https://openalex.org/C97355855","wikidata":"https://www.wikidata.org/wiki/Q11473","display_name":"Thermodynamics","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1017/s0956796812000354","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s0956796812000354","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/34D74AA93EA4EAAE23A30318EFBFF49D/S0956796812000354a.pdf/div-class-title-mri-modular-reasoning-about-interference-in-incremental-programming-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/415558","is_oa":true,"landing_page_url":"https://lirias.kuleuven.be/handle/123456789/415558","pdf_url":null,"source":{"id":"https://openalex.org/S7407055369","display_name":"Lirias","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"Journal of Functional Programming, vol. 22 (06), Art.No. 6, (797-852)","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.248.4750","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.248.4750","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://userweb.cs.utexas.edu/%7Ewcook/Drafts/2012/mri-jfp.pdf","raw_type":"text"},{"id":"pmh:oai:archive.ugent.be:2972921","is_oa":false,"landing_page_url":"http://hdl.handle.net/1854/LU-2972921","pdf_url":null,"source":{"id":"https://openalex.org/S4306400478","display_name":"Ghent University Academic Bibliography (Ghent University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I32597200","host_organization_name":"Ghent University","host_organization_lineage":["https://openalex.org/I32597200"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ISSN: 0956-7968","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:hub.hku.hk:10722/188521","is_oa":false,"landing_page_url":"http://hdl.handle.net/10722/188521","pdf_url":null,"source":{"id":"https://openalex.org/S4377196271","display_name":"The HKU Scholars Hub (University of Hong Kong)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I889458895","host_organization_name":"University of Hong Kong","host_organization_lineage":["https://openalex.org/I889458895"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Article"}],"best_oa_location":{"id":"doi:10.1017/s0956796812000354","is_oa":true,"landing_page_url":"https://doi.org/10.1017/s0956796812000354","pdf_url":"https://www.cambridge.org/core/services/aop-cambridge-core/content/view/34D74AA93EA4EAAE23A30318EFBFF49D/S0956796812000354a.pdf/div-class-title-mri-modular-reasoning-about-interference-in-incremental-programming-div.pdf","source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"},"sustainable_development_goals":[{"score":0.49000000953674316,"id":"https://metadata.un.org/sdg/16","display_name":"Peace, Justice and strong institutions"}],"awards":[{"id":"https://openalex.org/G949391715","display_name":null,"funder_award_id":"R11-2008-007-01002-0","funder_id":"https://openalex.org/F4320322349","funder_display_name":"Ministry of Education, Science and Technology"}],"funders":[{"id":"https://openalex.org/F4320310620","display_name":"University of Texas at Austin","ror":"https://ror.org/00hj54h04"},{"id":"https://openalex.org/F4320322348","display_name":"Korea Science and Engineering Foundation","ror":"https://ror.org/013aysd81"},{"id":"https://openalex.org/F4320322349","display_name":"Ministry of Education, Science and Technology","ror":"https://ror.org/01p262204"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W1992648627.pdf","grobid_xml":"https://content.openalex.org/works/W1992648627.grobid-xml"},"referenced_works_count":57,"referenced_works":["https://openalex.org/W326743114","https://openalex.org/W1487086732","https://openalex.org/W1494264673","https://openalex.org/W1500987966","https://openalex.org/W1532465792","https://openalex.org/W1548394473","https://openalex.org/W1560953315","https://openalex.org/W1571615440","https://openalex.org/W1591471358","https://openalex.org/W1594279870","https://openalex.org/W1595372275","https://openalex.org/W1716898798","https://openalex.org/W1987454317","https://openalex.org/W1995549062","https://openalex.org/W2000551127","https://openalex.org/W2011660287","https://openalex.org/W2012450002","https://openalex.org/W2014021676","https://openalex.org/W2030010589","https://openalex.org/W2030828698","https://openalex.org/W2037984920","https://openalex.org/W2057292961","https://openalex.org/W2057632882","https://openalex.org/W2064138295","https://openalex.org/W2066077784","https://openalex.org/W2068407102","https://openalex.org/W2068706008","https://openalex.org/W2075867419","https://openalex.org/W2080648611","https://openalex.org/W2082879582","https://openalex.org/W2086470575","https://openalex.org/W2091089602","https://openalex.org/W2101928793","https://openalex.org/W2106731015","https://openalex.org/W2115680394","https://openalex.org/W2116244845","https://openalex.org/W2116813111","https://openalex.org/W2125899403","https://openalex.org/W2131916293","https://openalex.org/W2136132047","https://openalex.org/W2136202785","https://openalex.org/W2136580373","https://openalex.org/W2141576692","https://openalex.org/W2142098311","https://openalex.org/W2142535561","https://openalex.org/W2143238865","https://openalex.org/W2145459199","https://openalex.org/W2149612550","https://openalex.org/W2159328045","https://openalex.org/W2159410989","https://openalex.org/W2164067955","https://openalex.org/W2295150383","https://openalex.org/W3002147709","https://openalex.org/W3124619212","https://openalex.org/W3171421481","https://openalex.org/W4241197470","https://openalex.org/W4254691308"],"related_works":["https://openalex.org/W2801835562","https://openalex.org/W196828063","https://openalex.org/W4247743232","https://openalex.org/W4238447024","https://openalex.org/W1602185604","https://openalex.org/W1499694838","https://openalex.org/W2572412372","https://openalex.org/W2911281194","https://openalex.org/W3004782279","https://openalex.org/W2110317952"],"abstract_inverted_index":{"Abstract":[0],"Incremental":[1],"Programming":[2],"(IP)":[3],"is":[4,40,85],"a":[5,71,78,111,133,165,180],"programming":[6,26,29,33],"style":[7],"in":[8,118,154,168,172],"which":[9],"new":[10],"program":[11],"components":[12,44,52,55,94],"are":[13],"defined":[14],"as":[15],"increments":[16],"of":[17,21,37,51,115,135,157,183],"other":[18],"components.":[19],"Examples":[20],"IP":[22,38,69,116],"mechanisms":[23,39,70],"include":[24],"Object-oriented":[25],"inheritance,":[27],"aspect-oriented":[28],"advice,":[30],"and":[31,62,83,100,125,142],"feature-oriented":[32],".":[34],"A":[35],"characteristic":[36],"that,":[41],"while":[42],"individual":[43],"can":[45],"be":[46],"independently":[47],"defined,":[48],"the":[49,155,169],"composition":[50],"makes":[53,66],"those":[54],"become":[56],"tightly":[57,92],"coupled,":[58],"sharing":[59],"both":[60],"control":[61,99],"data":[63,101],"flows.":[64,102],"This":[65,103],"reasoning":[67,76,107,137,143,186],"about":[68,77,108,147],"notoriously":[72],"hard":[73,87],"problem:":[74],"modular":[75,106],"component":[79],"becomes":[80],"very":[81,86],"difficult;":[82],"it":[84],"to":[88],"tell":[89],"if":[90],"two":[91,173],"coupled":[93],"interfere":[95],"with":[96,123,128,132,144,179],"each":[97],"other's":[98],"paper":[104],"presents":[105],"interference":[109,170],"(MRI),":[110],"purely":[112],"functional":[113],"model":[114],"embedded":[117],"Haskell.":[119],"MRI":[120,153,160],"models":[121],"inheritance":[122],"mixins":[124],"side":[126,158],"effects":[127],"monads.":[129],"It":[130],"comes":[131],"range":[134],"powerful":[136],"techniques:":[138],"equational":[139],"reasoning,":[140],"parametricity,":[141],"algebraic":[145],"laws":[146],"effectful":[148],"operations.":[149],"These":[150],"techniques":[151],"enable":[152],"presence":[156],"effects.":[159],"formally":[161],"captures":[162],"harmlessness":[163],",":[164],"hard-to-formalize":[166],"notion":[167],"literature,":[171],"theorems.":[174],"We":[175],"prove":[176],"these":[177],"theorems":[178],"non-trivial":[181],"combination":[182],"all":[184],"three":[185],"techniques.":[187]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2018,"cited_by_count":1},{"year":2016,"cited_by_count":1},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":4},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":1}],"updated_date":"2026-05-27T06:14:07.914337","created_date":"2025-10-10T00:00:00"}
