{"id":"https://openalex.org/W2148878240","doi":"https://doi.org/10.1145/1562112.1562122","title":"A semantics for context-oriented programming with layers","display_name":"A semantics for context-oriented programming with layers","publication_year":2009,"publication_date":"2009-01-01","ids":{"openalex":"https://openalex.org/W2148878240","doi":"https://doi.org/10.1145/1562112.1562122","mag":"2148878240"},"language":"en","primary_location":{"id":"doi:10.1145/1562112.1562122","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1562112.1562122","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Workshop on Context-Oriented Programming - COP '09","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://lirias.kuleuven.be/handle/123456789/241802","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5103414704","display_name":"Dave Clarke","orcid":"https://orcid.org/0000-0002-1970-6607"},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":true,"raw_author_name":"Dave Clarke","raw_affiliation_strings":["Katholieke Universiteit Leuven, Heverlee, Belgium"],"affiliations":[{"raw_affiliation_string":"Katholieke Universiteit Leuven, Heverlee, Belgium","institution_ids":["https://openalex.org/I99464096"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5009639508","display_name":"Ilya Sergey","orcid":"https://orcid.org/0000-0003-4250-5392"},"institutions":[{"id":"https://openalex.org/I99464096","display_name":"KU Leuven","ror":"https://ror.org/05f950310","country_code":"BE","type":"education","lineage":["https://openalex.org/I99464096"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Ilya Sergey","raw_affiliation_strings":["Katholieke Universiteit Leuven, Heverlee, Belgium"],"affiliations":[{"raw_affiliation_string":"Katholieke Universiteit Leuven, Heverlee, Belgium","institution_ids":["https://openalex.org/I99464096"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5103414704"],"corresponding_institution_ids":["https://openalex.org/I99464096"],"apc_list":null,"apc_paid":null,"fwci":3.1536,"has_fulltext":false,"cited_by_count":23,"citation_normalized_percentile":{"value":0.92427906,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"6"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9994999766349792,"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.9994999766349792,"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.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/T10772","display_name":"Distributed systems and fault tolerance","score":0.993399977684021,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/programming-language","display_name":"Programming language","score":0.8236538171768188},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7925019264221191},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.6129564642906189},{"id":"https://openalex.org/keywords/modularity","display_name":"Modularity (biology)","score":0.5129375457763672},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.4924262464046478},{"id":"https://openalex.org/keywords/operational-semantics","display_name":"Operational semantics","score":0.48538219928741455},{"id":"https://openalex.org/keywords/functional-logic-programming","display_name":"Functional logic programming","score":0.4793466031551361},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.4341859817504883},{"id":"https://openalex.org/keywords/programming-domain","display_name":"Programming domain","score":0.4177991449832916},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.4138546586036682},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.2833123803138733},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.15948504209518433}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8236538171768188},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7925019264221191},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.6129564642906189},{"id":"https://openalex.org/C2779478453","wikidata":"https://www.wikidata.org/wiki/Q6889748","display_name":"Modularity (biology)","level":2,"score":0.5129375457763672},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.4924262464046478},{"id":"https://openalex.org/C156325763","wikidata":"https://www.wikidata.org/wiki/Q1930895","display_name":"Operational semantics","level":3,"score":0.48538219928741455},{"id":"https://openalex.org/C96315309","wikidata":"https://www.wikidata.org/wiki/Q5508829","display_name":"Functional logic programming","level":4,"score":0.4793466031551361},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.4341859817504883},{"id":"https://openalex.org/C119263510","wikidata":"https://www.wikidata.org/wiki/Q7248501","display_name":"Programming domain","level":4,"score":0.4177991449832916},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.4138546586036682},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.2833123803138733},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.15948504209518433},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"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/C54355233","wikidata":"https://www.wikidata.org/wiki/Q7162","display_name":"Genetics","level":1,"score":0.0}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1145/1562112.1562122","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1562112.1562122","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"International Workshop on Context-Oriented Programming - COP '09","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.360.1428","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.360.1428","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://ilyasergey.net/papers/semantics-cop09.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.465.5475","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.465.5475","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"https://lirias.kuleuven.be/bitstream/123456789/241802/1/CONTEXTS.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.572.8369","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.572.8369","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/cop09/papers/a10-clarke.pdf","raw_type":"text"},{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/241802","is_oa":true,"landing_page_url":"https://lirias.kuleuven.be/handle/123456789/241802","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":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ECOOP, Genova, Italy, 6-10 July 2009","raw_type":"info:eu-repo/semantics/publishedVersion"}],"best_oa_location":{"id":"pmh:oai:lirias2repo.kuleuven.be:123456789/241802","is_oa":true,"landing_page_url":"https://lirias.kuleuven.be/handle/123456789/241802","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":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ECOOP, Genova, Italy, 6-10 July 2009","raw_type":"info:eu-repo/semantics/publishedVersion"},"sustainable_development_goals":[{"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4","score":0.6200000047683716}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":19,"referenced_works":["https://openalex.org/W41852851","https://openalex.org/W71059289","https://openalex.org/W399186836","https://openalex.org/W1542431166","https://openalex.org/W1557561422","https://openalex.org/W1990204174","https://openalex.org/W1992443356","https://openalex.org/W2014021676","https://openalex.org/W2033348393","https://openalex.org/W2070310827","https://openalex.org/W2087175184","https://openalex.org/W2097664691","https://openalex.org/W2098983494","https://openalex.org/W2112755897","https://openalex.org/W2150275961","https://openalex.org/W2798263227","https://openalex.org/W3082776162","https://openalex.org/W3128586615","https://openalex.org/W4251696120"],"related_works":["https://openalex.org/W2150275961","https://openalex.org/W1985637830","https://openalex.org/W1992443356","https://openalex.org/W2089889705","https://openalex.org/W2033348393","https://openalex.org/W2060640309","https://openalex.org/W2182749898","https://openalex.org/W2124489158","https://openalex.org/W2073585991","https://openalex.org/W2144114063","https://openalex.org/W1792109404","https://openalex.org/W1692608920","https://openalex.org/W2296688603","https://openalex.org/W116001958","https://openalex.org/W2018572961","https://openalex.org/W1501829296","https://openalex.org/W1524933607","https://openalex.org/W1964137226","https://openalex.org/W2008593634","https://openalex.org/W1975736938"],"abstract_inverted_index":{"Context-oriented":[0],"programming":[1,6,74],"(COP)":[2],"is":[3,87],"a":[4,19,24,67,113,127],"new":[5],"approach":[7,47],"whereby":[8],"the":[9,45],"context":[10],"in":[11,108],"which":[12],"expressions":[13],"evaluate":[14],"can":[15],"be":[16],"adapted":[17],"as":[18,77],"program":[20,121],"runs.":[21],"COP":[22],"provides":[23],"degree":[25],"of":[26,57],"flexibility":[27],"beyond":[28],"object-oriented":[29],"programming,":[30],"while":[31],"arguably":[32],"retaining":[33],"more":[34],"modularity":[35],"and":[36,82,95,99],"structure":[37],"than":[38],"aspect-oriented":[39],"programming.":[40],"Although":[41],"many":[42],"languages":[43,59],"exploring":[44],"context-oriented":[46,73],"exist,":[48],"to":[49],"our":[50],"knowledge":[51],"no":[52,120],"formal":[53,70],"type-sound":[54],"dynamic":[55],"semantics":[56,71],"these":[58],"exists.":[60],"We":[61],"address":[62],"this":[63],"shortcoming":[64],"by":[65,79],"providing":[66],"concise":[68],"syntax-based":[69],"for":[72,129],"with":[75,93],"layers,":[76],"witnessed":[78],"ContextL,":[80],"ContextJ*,":[81],"other":[83],"languages.":[84],"Our":[85],"language":[86],"based":[88],"on":[89],"Featherweight":[90],"Java":[91],"extended":[92],"layers":[94,102],"scoped":[96],"layer":[97],"activation":[98],"deactivation.":[100],"As":[101],"may":[103],"introduce":[104],"methods":[105],"not":[106],"appearing":[107],"classes,":[109],"we":[110],"also":[111],"give":[112],"static":[114],"type":[115],"system":[116],"that":[117,119],"ensures":[118],"gets":[122],"stuck":[123],"(i.e.,":[124],"there":[125],"exists":[126],"binding":[128],"each":[130],"dispatched":[131],"method":[132],"call).":[133]},"counts_by_year":[{"year":2019,"cited_by_count":2},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":3},{"year":2014,"cited_by_count":6},{"year":2013,"cited_by_count":3},{"year":2012,"cited_by_count":3}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
