{"id":"https://openalex.org/W2004791319","doi":"https://doi.org/10.1145/2501654.2501666","title":"A survey on reactive programming","display_name":"A survey on reactive programming","publication_year":2013,"publication_date":"2013-08-01","ids":{"openalex":"https://openalex.org/W2004791319","doi":"https://doi.org/10.1145/2501654.2501666","mag":"2004791319"},"language":"en","primary_location":{"id":"doi:10.1145/2501654.2501666","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2501654.2501666","pdf_url":null,"source":{"id":"https://openalex.org/S157921468","display_name":"ACM Computing Surveys","issn_l":"0360-0300","issn":["0360-0300","1557-7341"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Computing Surveys","raw_type":"journal-article"},"type":"review","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5047583981","display_name":"Engineer Bainomugisha","orcid":"https://orcid.org/0000-0002-3304-4144"},"institutions":[{"id":"https://openalex.org/I13469542","display_name":"Vrije Universiteit Brussel","ror":"https://ror.org/006e5kg04","country_code":"BE","type":"education","lineage":["https://openalex.org/I13469542"]}],"countries":["BE"],"is_corresponding":true,"raw_author_name":"Engineer Bainomugisha","raw_affiliation_strings":["Vrije Universiteit Brussel, Brussels, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Brussels, Belgium","institution_ids":["https://openalex.org/I13469542"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5007261847","display_name":"Andoni Lombide Carreton","orcid":null},"institutions":[{"id":"https://openalex.org/I13469542","display_name":"Vrije Universiteit Brussel","ror":"https://ror.org/006e5kg04","country_code":"BE","type":"education","lineage":["https://openalex.org/I13469542"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Andoni Lombide Carreton","raw_affiliation_strings":["Vrije Universiteit Brussel, Brussels, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Brussels, Belgium","institution_ids":["https://openalex.org/I13469542"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5083977662","display_name":"Tom Van Cutsem","orcid":"https://orcid.org/0000-0003-4116-4290"},"institutions":[{"id":"https://openalex.org/I13469542","display_name":"Vrije Universiteit Brussel","ror":"https://ror.org/006e5kg04","country_code":"BE","type":"education","lineage":["https://openalex.org/I13469542"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Tom van Cutsem","raw_affiliation_strings":["Vrije Universiteit Brussel, Brussels, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Brussels, Belgium","institution_ids":["https://openalex.org/I13469542"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5010797982","display_name":"Stijn Mostinckx","orcid":null},"institutions":[{"id":"https://openalex.org/I13469542","display_name":"Vrije Universiteit Brussel","ror":"https://ror.org/006e5kg04","country_code":"BE","type":"education","lineage":["https://openalex.org/I13469542"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Stijn Mostinckx","raw_affiliation_strings":["Vrije Universiteit Brussel, Brussels, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Brussels, Belgium","institution_ids":["https://openalex.org/I13469542"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5090657641","display_name":"Wolfgang De Meuter","orcid":"https://orcid.org/0000-0002-5229-5627"},"institutions":[{"id":"https://openalex.org/I13469542","display_name":"Vrije Universiteit Brussel","ror":"https://ror.org/006e5kg04","country_code":"BE","type":"education","lineage":["https://openalex.org/I13469542"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Wolfgang de Meuter","raw_affiliation_strings":["Vrije Universiteit Brussel, Brussels, Belgium"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Brussels, Belgium","institution_ids":["https://openalex.org/I13469542"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5047583981"],"corresponding_institution_ids":["https://openalex.org/I13469542"],"apc_list":null,"apc_paid":null,"fwci":18.3924,"has_fulltext":false,"cited_by_count":297,"citation_normalized_percentile":{"value":0.99569337,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":100},"biblio":{"volume":"45","issue":"4","first_page":"1","last_page":"34"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10933","display_name":"Real-Time Systems Scheduling","score":0.9980999827384949,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10933","display_name":"Real-Time Systems Scheduling","score":0.9980999827384949,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9980000257492065,"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.9977999925613403,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8990779519081116},{"id":"https://openalex.org/keywords/reactive-programming","display_name":"Reactive programming","score":0.720911979675293},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6357429027557373},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.5939904451370239},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.5384340882301331},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.5134835839271545},{"id":"https://openalex.org/keywords/functional-reactive-programming","display_name":"Functional reactive programming","score":0.4925399720668793},{"id":"https://openalex.org/keywords/declarative-programming","display_name":"Declarative programming","score":0.41537052392959595},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.3748997449874878},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.36290329694747925},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.36041057109832764},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.32565057277679443},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.2552160322666168}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8990779519081116},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.720911979675293},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6357429027557373},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.5939904451370239},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.5384340882301331},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.5134835839271545},{"id":"https://openalex.org/C119489759","wikidata":"https://www.wikidata.org/wiki/Q5508843","display_name":"Functional reactive programming","level":5,"score":0.4925399720668793},{"id":"https://openalex.org/C146206909","wikidata":"https://www.wikidata.org/wiki/Q531152","display_name":"Declarative programming","level":4,"score":0.41537052392959595},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.3748997449874878},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.36290329694747925},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.36041057109832764},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.32565057277679443},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.2552160322666168}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1145/2501654.2501666","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2501654.2501666","pdf_url":null,"source":{"id":"https://openalex.org/S157921468","display_name":"ACM Computing Surveys","issn_l":"0360-0300","issn":["0360-0300","1557-7341"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Computing Surveys","raw_type":"journal-article"},{"id":"pmh:oai:lirias2repo.kuleuven.be:20.500.12942/737575","is_oa":false,"landing_page_url":"https://lirias.kuleuven.be/handle/20.500.12942/737575","pdf_url":null,"source":{"id":"https://openalex.org/S4306401954","display_name":"Lirias (KU Leuven)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I99464096","host_organization_name":"KU Leuven","host_organization_lineage":["https://openalex.org/I99464096"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"acceptedVersion","is_accepted":true,"is_published":false,"raw_source_name":"Acm Computing Surveys, vol. 45 (4), Art.No. ARTN 52","raw_type":"info:eu-repo/semantics/publishedVersion"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.416.1589","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.416.1589","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://soft.vub.ac.be/Publications/2012/vub-soft-tr-12-13.pdf","raw_type":"text"},{"id":"pmh:oai:vubissmart:VUBISSMART:2000:210021","is_oa":false,"landing_page_url":null,"pdf_url":null,"source":{"id":"https://openalex.org/S4306402573","display_name":"VUBIR (Vrije Universiteit Brussel)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I13469542","host_organization_name":"Vrije Universiteit Brussel","host_organization_lineage":["https://openalex.org/I13469542"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"article"},{"id":"pmh:oai:vubissmart:VUBISSMART:2000:75213","is_oa":false,"landing_page_url":"https://biblio.vub.ac.be/vubir/a-survey-on-reactive-programming(ec0ab979-0551-4304-81d5-4e310ad4b35f).html","pdf_url":null,"source":{"id":"https://openalex.org/S4306402573","display_name":"VUBIR (Vrije Universiteit Brussel)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I13469542","host_organization_name":"Vrije Universiteit Brussel","host_organization_lineage":["https://openalex.org/I13469542"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Partnerships for the goals","score":0.4300000071525574,"id":"https://metadata.un.org/sdg/17"}],"awards":[],"funders":[{"id":"https://openalex.org/F4320321730","display_name":"Fonds Wetenschappelijk Onderzoek","ror":"https://ror.org/03qtxy027"}],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":49,"referenced_works":["https://openalex.org/W95578667","https://openalex.org/W154245241","https://openalex.org/W375614154","https://openalex.org/W1486467881","https://openalex.org/W1491796397","https://openalex.org/W1495226832","https://openalex.org/W1500975741","https://openalex.org/W1501640954","https://openalex.org/W1511203305","https://openalex.org/W1563513502","https://openalex.org/W1687120846","https://openalex.org/W1919109517","https://openalex.org/W1968265180","https://openalex.org/W1996138408","https://openalex.org/W2000616678","https://openalex.org/W2008111857","https://openalex.org/W2027665876","https://openalex.org/W2035115145","https://openalex.org/W2038118137","https://openalex.org/W2041337116","https://openalex.org/W2064138295","https://openalex.org/W2064844771","https://openalex.org/W2069418622","https://openalex.org/W2079512738","https://openalex.org/W2081938726","https://openalex.org/W2089589666","https://openalex.org/W2090146006","https://openalex.org/W2091158003","https://openalex.org/W2095343326","https://openalex.org/W2096620062","https://openalex.org/W2098931293","https://openalex.org/W2100294774","https://openalex.org/W2100599950","https://openalex.org/W2106423748","https://openalex.org/W2111938984","https://openalex.org/W2125415493","https://openalex.org/W2125519398","https://openalex.org/W2127335869","https://openalex.org/W2134686414","https://openalex.org/W2134707416","https://openalex.org/W2147417170","https://openalex.org/W2149092902","https://openalex.org/W2156938039","https://openalex.org/W2171267342","https://openalex.org/W2294457340","https://openalex.org/W2611840193","https://openalex.org/W3106288350","https://openalex.org/W4253360640","https://openalex.org/W4285719527"],"related_works":["https://openalex.org/W4236134058","https://openalex.org/W3004782279","https://openalex.org/W2097221791","https://openalex.org/W2286281461","https://openalex.org/W1988194486","https://openalex.org/W4296878212","https://openalex.org/W1907246400","https://openalex.org/W2060445097","https://openalex.org/W1585224757","https://openalex.org/W1879548647"],"abstract_inverted_index":{"Reactive":[0],"programming":[1,69],"has":[2],"recently":[3,45],"gained":[4],"popularity":[5],"as":[6,52],"a":[7,64,113],"paradigm":[8],"that":[9,94],"is":[10,109,131],"well-suited":[11],"for":[12,87],"developing":[13],"event-driven":[14],"and":[15,32,62,85],"interactive":[16],"applications.":[17],"It":[18],"facilitates":[19],"the":[20,101,144],"development":[21],"of":[22,41,66,75,103,116],"such":[23,37,51],"applications":[24],"by":[25,112],"providing":[26],"abstractions":[27],"to":[28],"express":[29],"time-varying":[30,76,125],"values":[31],"automatically":[33,121],"managing":[34],"dependencies":[35,123],"between":[36,124],"values.":[38,126],"A":[39],"number":[40,115],"approaches":[42,70],"have":[43],"been":[44],"proposed":[46],"embedded":[47],"in":[48,100,133,139],"various":[49],"languages":[50],"Haskell,":[53],"Scheme,":[54],"JavaScript,":[55],"Java,":[56],".NET,":[57],"etc.":[58],"This":[59],"survey":[60],"describes":[61],"provides":[63],"taxonomy":[65],"existing":[67],"reactive":[68,104,134,141],"along":[71],"six":[72],"axes:":[73],"representation":[74],"values,":[77],"evaluation":[78],"model,":[79],"lifting":[80],"operations,":[81],"multidirectionality,":[82],"glitch":[83,128],"avoidance,":[84,129],"support":[86],"distribution.":[88],"From":[89],"this":[90],"taxonomy,":[91],"we":[92],"observe":[93],"there":[95],"are":[96],"still":[97],"open":[98],"challenges":[99],"field":[102],"programming.":[105],"For":[106],"instance,":[107],"multidirectionality":[108],"supported":[110],"only":[111],"small":[114],"languages,":[117],"which":[118,130],"do":[119],"not":[120],"track":[122],"Similarly,":[127],"subtle":[132],"programs,":[135],"cannot":[136],"be":[137],"ensured":[138],"distributed":[140],"programs":[142],"using":[143],"current":[145],"techniques.":[146]},"counts_by_year":[{"year":2026,"cited_by_count":4},{"year":2025,"cited_by_count":12},{"year":2024,"cited_by_count":22},{"year":2023,"cited_by_count":17},{"year":2022,"cited_by_count":11},{"year":2021,"cited_by_count":19},{"year":2020,"cited_by_count":50},{"year":2019,"cited_by_count":55},{"year":2018,"cited_by_count":28},{"year":2017,"cited_by_count":20},{"year":2016,"cited_by_count":23},{"year":2015,"cited_by_count":18},{"year":2014,"cited_by_count":13},{"year":2013,"cited_by_count":4},{"year":2012,"cited_by_count":1}],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
