{"id":"https://openalex.org/W3109397709","doi":"https://doi.org/10.1145/3422584.3423152","title":"Interfaces for Modular Reasoning in Context-Oriented Programming","display_name":"Interfaces for Modular Reasoning in Context-Oriented Programming","publication_year":2020,"publication_date":"2020-07-21","ids":{"openalex":"https://openalex.org/W3109397709","doi":"https://doi.org/10.1145/3422584.3423152","mag":"3109397709"},"language":"en","primary_location":{"id":"doi:10.1145/3422584.3423152","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3422584.3423152","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity","raw_type":"proceedings-article"},"type":"article","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/A5037617485","display_name":"Paul Leger","orcid":"https://orcid.org/0000-0003-0969-5139"},"institutions":[{"id":"https://openalex.org/I2802166871","display_name":"Universidad Cat\u00f3lica del Norte","ror":"https://ror.org/02akpm128","country_code":"CL","type":"education","lineage":["https://openalex.org/I2802166871"]}],"countries":["CL"],"is_corresponding":true,"raw_author_name":"Paul Leger","raw_affiliation_strings":["Universidad Cat\u00f3lica del Norte, Chile"],"affiliations":[{"raw_affiliation_string":"Universidad Cat\u00f3lica del Norte, Chile","institution_ids":["https://openalex.org/I2802166871"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5079977725","display_name":"Hidehiko Masuhara","orcid":"https://orcid.org/0000-0002-8837-5303"},"institutions":[{"id":"https://openalex.org/I114531698","display_name":"Tokyo Institute of Technology","ror":"https://ror.org/0112mx960","country_code":"JP","type":"education","lineage":["https://openalex.org/I114531698"]}],"countries":["JP"],"is_corresponding":false,"raw_author_name":"Hidehiko Masuhara","raw_affiliation_strings":["Tokyo Institute of Technology, Japan"],"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technology, Japan","institution_ids":["https://openalex.org/I114531698"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5005465411","display_name":"Ismael Figueroa","orcid":"https://orcid.org/0000-0003-3661-4963"},"institutions":[{"id":"https://openalex.org/I79274474","display_name":"University of Valpara\u00edso","ror":"https://ror.org/00h9jrb69","country_code":"CL","type":"education","lineage":["https://openalex.org/I79274474"]}],"countries":["CL"],"is_corresponding":false,"raw_author_name":"Ismael Figueroa","raw_affiliation_strings":["Universidad de Valpara\u00edso, Chile"],"affiliations":[{"raw_affiliation_string":"Universidad de Valpara\u00edso, Chile","institution_ids":["https://openalex.org/I79274474"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5037617485"],"corresponding_institution_ids":["https://openalex.org/I2802166871"],"apc_list":null,"apc_paid":null,"fwci":0.3977,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.69802966,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":96},"biblio":{"volume":"28","issue":null,"first_page":"1","last_page":"7"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9988999962806702,"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.9988999962806702,"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/T10444","display_name":"Context-Aware Activity Recognition Systems","score":0.9947999715805054,"subfield":{"id":"https://openalex.org/subfields/1707","display_name":"Computer Vision and Pattern Recognition"},"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/T10933","display_name":"Real-Time Systems Scheduling","score":0.9898999929428101,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8163539171218872},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.6508446931838989},{"id":"https://openalex.org/keywords/code-reuse","display_name":"Code reuse","score":0.5944254994392395},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5522711277008057},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5334506034851074},{"id":"https://openalex.org/keywords/reuse","display_name":"Reuse","score":0.498699426651001},{"id":"https://openalex.org/keywords/javascript","display_name":"JavaScript","score":0.4733177125453949},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"Object-oriented programming","score":0.46052154898643494},{"id":"https://openalex.org/keywords/interface","display_name":"Interface (matter)","score":0.442690372467041},{"id":"https://openalex.org/keywords/layer","display_name":"Layer (electronics)","score":0.4426155686378479},{"id":"https://openalex.org/keywords/application-programming-interface","display_name":"Application programming interface","score":0.42310044169425964},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.40900570154190063},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.14719924330711365},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.1148141622543335}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8163539171218872},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.6508446931838989},{"id":"https://openalex.org/C2778583558","wikidata":"https://www.wikidata.org/wiki/Q771245","display_name":"Code reuse","level":3,"score":0.5944254994392395},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5522711277008057},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5334506034851074},{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.498699426651001},{"id":"https://openalex.org/C544833334","wikidata":"https://www.wikidata.org/wiki/Q2005","display_name":"JavaScript","level":2,"score":0.4733177125453949},{"id":"https://openalex.org/C73752529","wikidata":"https://www.wikidata.org/wiki/Q79872","display_name":"Object-oriented programming","level":2,"score":0.46052154898643494},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.442690372467041},{"id":"https://openalex.org/C2779227376","wikidata":"https://www.wikidata.org/wiki/Q6505497","display_name":"Layer (electronics)","level":2,"score":0.4426155686378479},{"id":"https://openalex.org/C99613125","wikidata":"https://www.wikidata.org/wiki/Q165194","display_name":"Application programming interface","level":2,"score":0.42310044169425964},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.40900570154190063},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.14719924330711365},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.1148141622543335},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"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/C157915830","wikidata":"https://www.wikidata.org/wiki/Q2928001","display_name":"Bubble","level":2,"score":0.0},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C129307140","wikidata":"https://www.wikidata.org/wiki/Q6795880","display_name":"Maximum bubble pressure method","level":3,"score":0.0},{"id":"https://openalex.org/C178790620","wikidata":"https://www.wikidata.org/wiki/Q11351","display_name":"Organic chemistry","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3422584.3423152","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3422584.3423152","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 12th ACM International Workshop on Context-Oriented Programming and Advanced Modularity","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":45,"referenced_works":["https://openalex.org/W175922506","https://openalex.org/W1724660581","https://openalex.org/W1978875190","https://openalex.org/W1983125921","https://openalex.org/W1992443356","https://openalex.org/W2000399282","https://openalex.org/W2029414465","https://openalex.org/W2045337518","https://openalex.org/W2058751520","https://openalex.org/W2060640309","https://openalex.org/W2067883772","https://openalex.org/W2075145873","https://openalex.org/W2075832738","https://openalex.org/W2079512738","https://openalex.org/W2079841778","https://openalex.org/W2087175184","https://openalex.org/W2089794420","https://openalex.org/W2089889705","https://openalex.org/W2092658016","https://openalex.org/W2098057540","https://openalex.org/W2105379554","https://openalex.org/W2116244845","https://openalex.org/W2126225516","https://openalex.org/W2136247242","https://openalex.org/W2140213166","https://openalex.org/W2142535561","https://openalex.org/W2145919358","https://openalex.org/W2149092902","https://openalex.org/W2150275961","https://openalex.org/W2159694746","https://openalex.org/W2171267342","https://openalex.org/W2278905624","https://openalex.org/W2306941968","https://openalex.org/W2527095743","https://openalex.org/W2754864316","https://openalex.org/W2755237026","https://openalex.org/W2770227940","https://openalex.org/W2795128967","https://openalex.org/W2891300087","https://openalex.org/W2969822327","https://openalex.org/W3101727937","https://openalex.org/W4230920038","https://openalex.org/W4237854095","https://openalex.org/W4253360640","https://openalex.org/W4254691308"],"related_works":["https://openalex.org/W2182697532","https://openalex.org/W1517387344","https://openalex.org/W1544062218","https://openalex.org/W185550498","https://openalex.org/W2348203156","https://openalex.org/W2226868092","https://openalex.org/W2164928043","https://openalex.org/W1991166235","https://openalex.org/W2381788446","https://openalex.org/W2153525553"],"abstract_inverted_index":{"Different":[0],"activation":[1,23,72,153],"mechanisms":[2,24,73],"for":[3,201],"Context-Oriented":[4],"Programming":[5],"(COP)":[6],"like":[7],"implicit":[8,169,202],"activations":[9,161,170,198],"have":[10],"been":[11],"proposed,":[12],"increasing":[13],"COP":[14,50,58],"opportunities":[15],"to":[16,34,70,97,104,114,146,154,157,168],"be":[17,105],"applied":[18],"in":[19,59,77,107,171],"real":[20,60],"scenarios.":[21,61],"However,":[22],"and":[25,46,51,54,74,91,93,126,205,209,213],"base":[26,38,52,75,124],"code":[27,39,76,125],"definitions":[28],"are":[29,67,102],"insufficiently":[30],"decoupled,":[31],"as":[32,134],"conditionals":[33,94,175],"activate":[35],"layers":[36,101,156],"require":[37],"variable":[40],"references.":[41],"This":[42,62],"hinders":[43],"reuse,":[44],"evolution,":[45],"modular":[47],"reasoning":[48],"of":[49,57,151,162,174,184],"code,":[53],"therefore,":[55],"uses":[56],"paper":[63],"proposes":[64],"interfaces,":[65,83,196],"which":[66,172],"shared":[68],"abstractions":[69],"communicate":[71],"a":[78,122,130,135,138,189],"decoupled":[79],"manner.":[80],"Using":[81],"these":[82],"an":[84,144],"object":[85],"can":[86,111,142],"exhibit":[87,147],"its":[88,152],"internal":[89],"state":[90],"behaviors,":[92],"use":[95,112,143],"them":[96],"(de)activate":[98,177],"layers.":[99,163,178],"As":[100],"planned":[103],"(re)used":[106],"different":[108],"applications,":[109],"developers":[110],"interfaces":[113],"overcome":[115],"the":[116,148,182],"incompatibility":[117],"between":[118],"values":[119,127],"exposed":[120],"by":[121,129],"particular":[123],"required":[128],"layer.":[131],"In":[132],"addition,":[133],"layer":[136],"is":[137],"plain":[139],"object,":[140],"it":[141],"interface":[145],"conditional":[149],"evaluation":[150],"other":[155],"resolve":[158],"conflicts":[159],"among":[160],"We":[164],"apply":[165],"this":[166,185],"proposal":[167,186],"evaluations":[173],"implicitly":[176],"Finally,":[179],"we":[180],"illustrate":[181],"benefits":[183],"through":[187],"RI-JS,":[188],"practical":[190],"JavaScript":[191],"library":[192],"that":[193],"currently":[194],"supports":[195],"reactive":[197],"(implementation":[199],"variant":[200],"activations),":[203],"global":[204],"dynamic":[206],"deployment,":[207],"enter":[208],"exit":[210],"transition":[211],"processes,":[212],"partial":[214],"methods.":[215]},"counts_by_year":[{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
