{"id":"https://openalex.org/W4392389978","doi":"https://doi.org/10.22152/programming-journal.org/2024/8/11","title":"Reactive Programming without Functions","display_name":"Reactive Programming without Functions","publication_year":2024,"publication_date":"2024-02-15","ids":{"openalex":"https://openalex.org/W4392389978","doi":"https://doi.org/10.22152/programming-journal.org/2024/8/11"},"language":"en","primary_location":{"id":"doi:10.22152/programming-journal.org/2024/8/11","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2024/8/11","pdf_url":"https://arxiv.org/pdf/2403.02296.pdf","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"bronze","oa_url":"https://arxiv.org/pdf/2403.02296.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5056902104","display_name":"Bjarno Oeyen","orcid":"https://orcid.org/0000-0002-2100-4559"},"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":"Bjarno Oeyen","raw_affiliation_strings":["Vrije Universiteit Brussel, Belgium","Software Languages Lab, Vrije Universiteit Brussel, Belgium"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Belgium","institution_ids":["https://openalex.org/I13469542"]},{"raw_affiliation_string":"Software Languages Lab, Vrije Universiteit Brussel, Belgium","institution_ids":["https://openalex.org/I13469542"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5023932927","display_name":"Joeri De Koster","orcid":"https://orcid.org/0000-0002-2932-8208"},"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":"Joeri De Koster","raw_affiliation_strings":["Vrije Universiteit Brussel, Belgium","Software Languages Lab, Vrije Universiteit Brussel, Belgium"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Belgium","institution_ids":["https://openalex.org/I13469542"]},{"raw_affiliation_string":"Software Languages Lab, Vrije Universiteit Brussel, 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, Belgium","Software Languages Lab, Vrije Universiteit Brussel, Belgium"],"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Brussel, Belgium","institution_ids":["https://openalex.org/I13469542"]},{"raw_affiliation_string":"Software Languages Lab, Vrije Universiteit Brussel, Belgium","institution_ids":["https://openalex.org/I13469542"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5056902104"],"corresponding_institution_ids":["https://openalex.org/I13469542"],"apc_list":null,"apc_paid":null,"fwci":0.5174,"has_fulltext":true,"cited_by_count":1,"citation_normalized_percentile":{"value":0.67540295,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":95},"biblio":{"volume":"8","issue":"3","first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10328","display_name":"Supply Chain and Inventory Management","score":0.5785999894142151,"subfield":{"id":"https://openalex.org/subfields/1404","display_name":"Management Information Systems"},"field":{"id":"https://openalex.org/fields/14","display_name":"Business, Management and Accounting"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},"topics":[{"id":"https://openalex.org/T10328","display_name":"Supply Chain and Inventory Management","score":0.5785999894142151,"subfield":{"id":"https://openalex.org/subfields/1404","display_name":"Management Information Systems"},"field":{"id":"https://openalex.org/fields/14","display_name":"Business, Management and Accounting"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},{"id":"https://openalex.org/T10551","display_name":"Scheduling and Optimization Algorithms","score":0.5315999984741211,"subfield":{"id":"https://openalex.org/subfields/2209","display_name":"Industrial and Manufacturing Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10963","display_name":"Advanced Optimization Algorithms Research","score":0.49380001425743103,"subfield":{"id":"https://openalex.org/subfields/2612","display_name":"Numerical Analysis"},"field":{"id":"https://openalex.org/fields/26","display_name":"Mathematics"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.47333818674087524},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.4168645739555359}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.47333818674087524},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.4168645739555359}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.22152/programming-journal.org/2024/8/11","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2024/8/11","pdf_url":"https://arxiv.org/pdf/2403.02296.pdf","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2403.02296","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2403.02296","pdf_url":"https://arxiv.org/pdf/2403.02296","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"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":"text"},{"id":"pmh:oai:vubissmart:VUBISSMART:2000:172490","is_oa":true,"landing_page_url":"https://biblio.vub.ac.be/vubir/reactive-programming-without-functions(99ceffd2-d323-45f5-8630-8eb7f9e9d62f).html","pdf_url":"https://biblio.vub.ac.be/vubirfiles/109045636/2403.02296.pdf","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":"publishedVersion"},{"id":"pmh:oai:vubissmart:VUBISSMART:2000:203973","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"}],"best_oa_location":{"id":"doi:10.22152/programming-journal.org/2024/8/11","is_oa":true,"landing_page_url":"https://doi.org/10.22152/programming-journal.org/2024/8/11","pdf_url":"https://arxiv.org/pdf/2403.02296.pdf","source":{"id":"https://openalex.org/S4210199781","display_name":"The Art Science and Engineering of Programming","issn_l":"2473-7321","issn":["2473-7321"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"The Art, Science, and Engineering of Programming","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G5185491721","display_name":null,"funder_award_id":"1S93822N","funder_id":"https://openalex.org/F4320321730","funder_display_name":"Fonds Wetenschappelijk Onderzoek"}],"funders":[{"id":"https://openalex.org/F4320321730","display_name":"Fonds Wetenschappelijk Onderzoek","ror":"https://ror.org/03qtxy027"},{"id":"https://openalex.org/F4320327336","display_name":"Vlaamse regering","ror":null}],"has_content":{"grobid_xml":false,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4392389978.pdf"},"referenced_works_count":55,"referenced_works":["https://openalex.org/W90361031","https://openalex.org/W95578667","https://openalex.org/W1491796397","https://openalex.org/W1500975741","https://openalex.org/W1511203305","https://openalex.org/W1557561422","https://openalex.org/W1592840252","https://openalex.org/W1597838511","https://openalex.org/W1770006921","https://openalex.org/W1875492031","https://openalex.org/W1949062307","https://openalex.org/W1968464751","https://openalex.org/W1982590499","https://openalex.org/W2002301065","https://openalex.org/W2004791319","https://openalex.org/W2008111857","https://openalex.org/W2045255985","https://openalex.org/W2049440551","https://openalex.org/W2079512738","https://openalex.org/W2088735483","https://openalex.org/W2095343326","https://openalex.org/W2100044916","https://openalex.org/W2105153579","https://openalex.org/W2113112607","https://openalex.org/W2125415493","https://openalex.org/W2149092902","https://openalex.org/W2168485266","https://openalex.org/W2333469955","https://openalex.org/W2437154491","https://openalex.org/W2510627144","https://openalex.org/W2511785964","https://openalex.org/W2514237507","https://openalex.org/W2533672619","https://openalex.org/W2536349676","https://openalex.org/W2572482456","https://openalex.org/W2787976344","https://openalex.org/W2897762392","https://openalex.org/W2898297789","https://openalex.org/W2977030256","https://openalex.org/W2997671293","https://openalex.org/W3091792994","https://openalex.org/W3102406088","https://openalex.org/W3104018683","https://openalex.org/W3108936444","https://openalex.org/W3109424891","https://openalex.org/W3115037346","https://openalex.org/W3188506721","https://openalex.org/W4213093762","https://openalex.org/W4214487305","https://openalex.org/W4230414644","https://openalex.org/W4245304538","https://openalex.org/W4245633186","https://openalex.org/W4246319563","https://openalex.org/W4253360640","https://openalex.org/W4280571816"],"related_works":["https://openalex.org/W2748952813","https://openalex.org/W2390279801","https://openalex.org/W2358668433","https://openalex.org/W2376932109","https://openalex.org/W2001405890","https://openalex.org/W2382290278","https://openalex.org/W2478288626","https://openalex.org/W4391913857","https://openalex.org/W2350741829","https://openalex.org/W2530322880"],"abstract_inverted_index":{"Context:":[0],"Reactive":[1],"programming":[2,7,190,262,437,476],"(RP)":[3],"is":[4,53,107,136,246,438,477],"a":[5,30,111,144,172,187,203,331,434,464],"declarative":[6],"paradigm":[8],"suitable":[9],"for":[10,65,207,274],"expressing":[11],"the":[12,50,121,126,131,162,235,308,319,351,359,368,420,442,454],"handling":[13],"of":[14,83,125,165,215,224,228,237,283,300,445,456,466],"events.":[15],"It":[16],"enables":[17],"programmers":[18],"to":[19,25,38,120,179,197,318,440,472],"create":[20],"applications":[21,68],"that":[22,59,156,192,226,321,354,370,452],"react":[23],"automatically":[24,55],"changes":[26,33],"over":[27],"time.":[28],"Whenever":[29],"time-varying":[31],"signal":[32],"--":[34,49],"e.g.":[35],"in":[36,56,97,100,130,143,150,171,182,260,323,340,347,448],"response":[37],"values":[39],"produced":[40],"by":[41,281,328,358,366,378,479],"event":[42],"stream":[43],"(e.g.,":[44],"sensor":[45],"data,":[46],"user":[47],"input...)":[48],"program":[51],"state":[52],"updated":[54],"tandem":[57],"with":[58,202,256,278,293,401,407,426],"change.":[60],"This":[61,95],"makes":[62],"RP":[63,75,132,243,264,325,342,409,450],"well-suited":[64],"building":[66],"interactive":[67],"and":[69,104,167,217,220,239,285,290,310,388,414,417,483],"reactive":[70,102,154,166,189,337,352,436,461,475],"(soft":[71],"real-time)":[72],"systems.":[73],"Inquiry:":[74],"Language":[76,93],"implementations":[77],"are":[78,157,344,382,386],"often":[79],"built":[80],"on":[81,210,374],"top":[82],"an":[84,89],"existing":[85],"(host)":[86],"language":[87,129,146,231,302,431,481],"as":[88,114,447,463],"Embedded":[90],"Domain":[91],"Specific":[92],"(EDSL).":[94],"results":[96,170],"application":[98],"code":[99,103,106,141,169],"which":[101,336],"non-reactive":[105,168,348,427],"inherently":[108],"entangled.":[109],"Using":[110],"mechanism":[112],"known":[113],"lifting,":[115],"one":[116],"usually":[117],"has":[118,193,373],"access":[119],"full":[122],"feature":[123,372],"set":[124],"(non-reactive)":[127],"host":[128,140],"program.":[133],"However,":[134],"lifting":[135,248],"also":[137,313,423],"dangerous.":[138],"First,":[139],"expressed":[142,346],"Turing-complete":[145],"may":[147],"diverge,":[148],"resulting":[149],"unresponsive":[151],"programs:":[152],"i.e.":[153,404],"programs":[155,446,462],"not":[158,233,305],"actually":[159],"reactive.":[160],"Second,":[161],"bi-directional":[163],"integration":[164],"paradigmatic":[173],"mismatch":[174],"that,":[175],"when":[176],"unchecked,":[177],"leads":[178],"faulty":[180],"behaviour":[181],"programs.":[183],"Approach:":[184],"We":[185,200,250,362],"propose":[186],"new":[188],"language,":[191],"been":[194],"meticulously":[195],"designed":[196],"be":[198,356,394,412,424],"reactive-only.":[199],"start":[201],"simple":[204,253],"(first-order)":[205],"model":[206,254],"reactivity,":[208],"based":[209],"reactors":[211,271,292],"(i.e.":[212,222],"uninstantiated":[213],"descriptions":[214],"signals":[216,277,381,392],"their":[218],"dependencies)":[219],"deployments":[221],"instances":[223],"reactors)":[225],"consist":[227],"signals.":[229],"The":[230],"does":[232],"have":[234],"notion":[236],"functions,":[238],"thus":[240],"unlike":[241],"other":[242,261,341,402,408,449],"languages":[244,343,410,451],"there":[245],"no":[247],"either.":[249],"extend":[251],"this":[252],"incrementally":[255],"additional":[257],"features":[258,268,316,338],"found":[259],"languages,":[263],"or":[265],"otherwise.":[266],"These":[267],"include":[269],"stateful":[270],"(that":[272],"allow":[273],"time-based":[275],"accumulation),":[276],"dynamic":[279],"dependencies":[280,390],"means":[282],"conditionals":[284],"polymorphic":[286],"deployments,":[287],"recursively-defined":[288],"reactors,":[289,469],"(anonymous)":[291],"lexical":[294],"scope.":[295],"Knowledge:":[296],"In":[297],"our":[298,364,375],"description":[299],"these":[301],"features,":[303],"we":[304,334,398,470],"only":[306],"describe":[307],"syntax":[309],"semantics,":[311],"but":[312],"how":[314,380,384,389,433,474],"each":[315,371],"compares":[317],"problems":[320],"exist":[322],"(EDSL)":[324],"languages.":[326,428],"I.e.":[327],"starting":[329],"from":[330],"reactive-only":[332],"model,":[333],"identify":[335],"(that,":[339],"typically":[345],"code)":[349],"affect":[350],"guarantees":[353],"can":[355,393],"enforced":[357],"language.":[360],"Grounding:":[361],"base":[363],"arguments":[365],"analysing":[367,379],"effect":[369],"language:":[376],"e.g.,":[377],"updated,":[383],"they":[385],"created":[387],"between":[391],"affected.":[395],"When":[396],"applicable,":[397],"draw":[399],"parallels":[400],"languages:":[403],"similarities":[405],"shared":[406],"will":[411,422],"highlighted":[413],"thoroughly":[415],"analysed,":[416],"where":[418],"relevant":[419],"same":[421,443],"done":[425],"Importance:":[429],"Our":[430],"shows":[432],"purely":[435],"able":[439],"express":[441],"kinds":[444],"require":[453],"use":[455],"(unchecked)":[457],"functions.":[458],"By":[459],"considering":[460],"collection":[465],"pure":[467],"(reactive-only)":[468],"aim":[471],"increase":[473],"comprehended":[478],"both":[480],"designers":[482],"its":[484],"users.":[485]},"counts_by_year":[{"year":2025,"cited_by_count":1}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
