{"id":"https://openalex.org/W2045058623","doi":"https://doi.org/10.1145/2814270.2814277","title":"A co-contextual formulation of type rules and its application to incremental type checking","display_name":"A co-contextual formulation of type rules and its application to incremental type checking","publication_year":2015,"publication_date":"2015-10-23","ids":{"openalex":"https://openalex.org/W2045058623","doi":"https://doi.org/10.1145/2814270.2814277","mag":"2045058623"},"language":"en","primary_location":{"id":"doi:10.1145/2814270.2814277","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2814270.2814277","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications","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/A5059992246","display_name":"Sebastian Erdweg","orcid":"https://orcid.org/0000-0002-1974-5956"},"institutions":[{"id":"https://openalex.org/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE"],"is_corresponding":true,"raw_author_name":"Sebastian Erdweg","raw_affiliation_strings":["TU Darmstadt, Germany","[TU, Darmstadt, Germany]"],"affiliations":[{"raw_affiliation_string":"TU Darmstadt, Germany","institution_ids":["https://openalex.org/I31512782"]},{"raw_affiliation_string":"[TU, Darmstadt, Germany]","institution_ids":["https://openalex.org/I31512782"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5019063975","display_name":"Oliver Bra\u010devac","orcid":"https://orcid.org/0000-0003-3569-4869"},"institutions":[{"id":"https://openalex.org/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Oliver Bra\u010devac","raw_affiliation_strings":["TU Darmstadt, Germany","[TU, Darmstadt, Germany]"],"affiliations":[{"raw_affiliation_string":"TU Darmstadt, Germany","institution_ids":["https://openalex.org/I31512782"]},{"raw_affiliation_string":"[TU, Darmstadt, Germany]","institution_ids":["https://openalex.org/I31512782"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5083806514","display_name":"Edlira Kuci","orcid":null},"institutions":[{"id":"https://openalex.org/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Edlira Kuci","raw_affiliation_strings":["TU Darmstadt, Germany","[TU, Darmstadt, Germany]"],"affiliations":[{"raw_affiliation_string":"TU Darmstadt, Germany","institution_ids":["https://openalex.org/I31512782"]},{"raw_affiliation_string":"[TU, Darmstadt, Germany]","institution_ids":["https://openalex.org/I31512782"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5083372743","display_name":"Matthias Krebs","orcid":null},"institutions":[{"id":"https://openalex.org/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE"],"is_corresponding":false,"raw_author_name":"Matthias Krebs","raw_affiliation_strings":["TU Darmstadt, Germany","[TU, Darmstadt, Germany]"],"affiliations":[{"raw_affiliation_string":"TU Darmstadt, Germany","institution_ids":["https://openalex.org/I31512782"]},{"raw_affiliation_string":"[TU, Darmstadt, Germany]","institution_ids":["https://openalex.org/I31512782"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5078067853","display_name":"Mira Mezini","orcid":"https://orcid.org/0000-0001-6563-7537"},"institutions":[{"id":"https://openalex.org/I67415387","display_name":"Lancaster University","ror":"https://ror.org/04f2nsd36","country_code":"GB","type":"education","lineage":["https://openalex.org/I67415387"]},{"id":"https://openalex.org/I31512782","display_name":"Technical University of Darmstadt","ror":"https://ror.org/05n911h24","country_code":"DE","type":"education","lineage":["https://openalex.org/I31512782"]}],"countries":["DE","GB"],"is_corresponding":false,"raw_author_name":"Mira Mezini","raw_affiliation_strings":["TU Darmstadt, Germany / Lancaster University, UK","TU Darmstadt, Germany / Lancaster University, UK#TAB#"],"affiliations":[{"raw_affiliation_string":"TU Darmstadt, Germany / Lancaster University, UK","institution_ids":["https://openalex.org/I31512782","https://openalex.org/I67415387"]},{"raw_affiliation_string":"TU Darmstadt, Germany / Lancaster University, UK#TAB#","institution_ids":["https://openalex.org/I67415387"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5059992246"],"corresponding_institution_ids":["https://openalex.org/I31512782"],"apc_list":null,"apc_paid":null,"fwci":4.0058,"has_fulltext":false,"cited_by_count":24,"citation_normalized_percentile":{"value":0.94254006,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"880","last_page":"897"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"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/T11424","display_name":"Security and Verification in Computing","score":0.9962999820709229,"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.995199978351593,"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.7753864526748657},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.7285729646682739},{"id":"https://openalex.org/keywords/subtyping","display_name":"Subtyping","score":0.6958824396133423},{"id":"https://openalex.org/keywords/type-theory","display_name":"Type theory","score":0.6024186611175537},{"id":"https://openalex.org/keywords/merge","display_name":"Merge (version control)","score":0.565628170967102},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5490015149116516},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.5233858227729797},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.5048285126686096},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.455120325088501},{"id":"https://openalex.org/keywords/data-type","display_name":"Data type","score":0.43578171730041504},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.3250274658203125},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.3247920870780945},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.20033499598503113},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.17587065696716309}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7753864526748657},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.7285729646682739},{"id":"https://openalex.org/C83852419","wikidata":"https://www.wikidata.org/wiki/Q2713292","display_name":"Subtyping","level":2,"score":0.6958824396133423},{"id":"https://openalex.org/C93682546","wikidata":"https://www.wikidata.org/wiki/Q1056428","display_name":"Type theory","level":3,"score":0.6024186611175537},{"id":"https://openalex.org/C197129107","wikidata":"https://www.wikidata.org/wiki/Q1921621","display_name":"Merge (version control)","level":2,"score":0.565628170967102},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5490015149116516},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.5233858227729797},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.5048285126686096},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.455120325088501},{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.43578171730041504},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3250274658203125},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.3247920870780945},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.20033499598503113},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.17587065696716309},{"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/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1145/2814270.2814277","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2814270.2814277","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.725.907","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.725.907","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.informatik.uni-marburg.de/%7Eseba/publications/cocontextual-type-checking.pdf","raw_type":"text"},{"id":"pmh:oai:eprints.lancs.ac.uk:81344","is_oa":false,"landing_page_url":"https://eprints.lancs.ac.uk/id/eprint/81344/","pdf_url":null,"source":{"id":"https://openalex.org/S4306401916","display_name":"Lancaster EPrints (Lancaster University)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I67415387","host_organization_name":"Lancaster University","host_organization_lineage":["https://openalex.org/I67415387"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Contribution in Book/Report/Proceedings"},{"id":"pmh:oai:tubiblio.ulb.tu-darmstadt.de:76824","is_oa":false,"landing_page_url":"http://tubiblio.ulb.tu-darmstadt.de/76824/","pdf_url":null,"source":{"id":"https://openalex.org/S4377196390","display_name":"TUbilio (Technical University of Darmstadt)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I31512782","host_organization_name":"Technische Universit\u00e4t Darmstadt","host_organization_lineage":["https://openalex.org/I31512782"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Buchkapitel"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":27,"referenced_works":["https://openalex.org/W1492943981","https://openalex.org/W1519972603","https://openalex.org/W1557561422","https://openalex.org/W1573418128","https://openalex.org/W1973457000","https://openalex.org/W2012058332","https://openalex.org/W2016076634","https://openalex.org/W2023614281","https://openalex.org/W2033101903","https://openalex.org/W2036676170","https://openalex.org/W2051504145","https://openalex.org/W2056310485","https://openalex.org/W2058377260","https://openalex.org/W2069718764","https://openalex.org/W2080825531","https://openalex.org/W2087272670","https://openalex.org/W2093036100","https://openalex.org/W2100845624","https://openalex.org/W2106656979","https://openalex.org/W2117699092","https://openalex.org/W2135759466","https://openalex.org/W2143777056","https://openalex.org/W2166822586","https://openalex.org/W2912321902","https://openalex.org/W2914260883","https://openalex.org/W4248297439","https://openalex.org/W4249252474"],"related_works":["https://openalex.org/W3027723509","https://openalex.org/W2733168542","https://openalex.org/W2563592207","https://openalex.org/W1510917942","https://openalex.org/W2552165488","https://openalex.org/W4298104918","https://openalex.org/W1810290248","https://openalex.org/W1595983599","https://openalex.org/W1507723317","https://openalex.org/W3110513392"],"abstract_inverted_index":{"Type":[0],"rules":[1,58,104,116],"associate":[2],"types":[3],"to":[4,119,154],"expressions":[5],"given":[6],"a":[7,53,68,71,94,99,106],"typing":[8,22,34],"context.":[9],"As":[10],"the":[11,15,21,33],"type":[12,37,49,57,69,77,103,115,121,129,149,157],"checker":[13],"traverses":[14],"expression":[16,63,81],"tree":[17,82],"top-down,":[18],"it":[19],"extends":[20],"context":[23,26,35,74,86],"with":[24],"additional":[25],"information":[27],"that":[28,59,136,147],"becomes":[29],"available.":[30],"This":[31],"way,":[32],"coordinates":[36],"checking":[38,150],"in":[39],"otherwise":[40],"independent":[41],"subexpressions,":[42],"which":[43],"inhibits":[44],"parallelization":[45],"and":[46,66,70,84,110,133,141,159],"incrementalization":[47,160],"of":[48,56,73,88,102],"checking.":[50,122],"We":[51,92],"propose":[52],"co-contextual":[54,100,114,148],"formulation":[55,101,109],"only":[60],"take":[61],"an":[62,80],"as":[64],"input":[65],"produce":[67],"set":[72],"requirements.":[75],"Co-contextual":[76],"checkers":[78,130],"traverse":[79],"bottom-up":[83],"merge":[85],"requirements":[87],"independently":[89],"checked":[90],"subexpressions.":[91],"describe":[93],"method":[95],"for":[96,131,134],"systematically":[97],"constructing":[98],"from":[105],"regular":[107],"context-based":[108,156],"we":[111,126],"show":[112],"how":[113],"give":[117],"rise":[118],"incremental":[120,128],"Using":[123],"our":[124],"method,":[125],"derive":[127],"PCF":[132],"extensions":[135],"introduce":[137],"records,":[138],"parametric":[139],"polymorphism,":[140],"subtyping.":[142],"Our":[143],"performance":[144,152,163],"evaluation":[145],"shows":[146],"has":[151],"comparable":[153],"standard":[155],"checking,":[158],"can":[161],"improve":[162],"significantly.":[164]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":2},{"year":2023,"cited_by_count":2},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":2},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":3},{"year":2016,"cited_by_count":5},{"year":2015,"cited_by_count":1}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
