{"id":"https://openalex.org/W4411260224","doi":"https://doi.org/10.1145/3729308","title":"Principal Type Inference under a Prefix: A Fresh Look at Static Overloading","display_name":"Principal Type Inference under a Prefix: A Fresh Look at Static Overloading","publication_year":2025,"publication_date":"2025-06-10","ids":{"openalex":"https://openalex.org/W4411260224","doi":"https://doi.org/10.1145/3729308"},"language":"en","primary_location":{"id":"doi:10.1145/3729308","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3729308","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3729308","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3729308","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5086447301","display_name":"Daan Leijen","orcid":"https://orcid.org/0000-0003-1027-5430"},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Daan Leijen","raw_affiliation_strings":["Microsoft Research, Redmond, USA"],"raw_orcid":"https://orcid.org/0000-0003-1027-5430","affiliations":[{"raw_affiliation_string":"Microsoft Research, Redmond, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5013636373","display_name":"Wenjia Ye","orcid":"https://orcid.org/0000-0002-3968-6201"},"institutions":[{"id":"https://openalex.org/I165932596","display_name":"National University of Singapore","ror":"https://ror.org/01tgyzw49","country_code":"SG","type":"education","lineage":["https://openalex.org/I165932596"]},{"id":"https://openalex.org/I889458895","display_name":"University of Hong Kong","ror":"https://ror.org/02zhqgq86","country_code":"HK","type":"education","lineage":["https://openalex.org/I889458895"]}],"countries":["HK","SG"],"is_corresponding":false,"raw_author_name":"Wenjia Ye","raw_affiliation_strings":["National University of Singapore, Singapore, Singapore","University of Hong Kong, Hong Kong, China"],"raw_orcid":"https://orcid.org/0000-0002-3968-6201","affiliations":[{"raw_affiliation_string":"National University of Singapore, Singapore, Singapore","institution_ids":["https://openalex.org/I165932596"]},{"raw_affiliation_string":"University of Hong Kong, Hong Kong, China","institution_ids":["https://openalex.org/I889458895"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":2.1494,"has_fulltext":true,"cited_by_count":2,"citation_normalized_percentile":{"value":0.88823284,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":91,"max":97},"biblio":{"volume":"9","issue":"PLDI","first_page":"1442","last_page":"1465"},"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.9997000098228455,"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.9997000098228455,"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/T10142","display_name":"Formal Methods in Verification","score":0.9763000011444092,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T10181","display_name":"Natural Language Processing Techniques","score":0.9668999910354614,"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/prefix","display_name":"Prefix","score":0.7021961212158203},{"id":"https://openalex.org/keywords/inference","display_name":"Inference","score":0.619791567325592},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.561455488204956},{"id":"https://openalex.org/keywords/principal","display_name":"Principal (computer security)","score":0.5357154607772827},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.5170941352844238},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5095344185829163},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.367093026638031},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.33423900604248047},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.2832360863685608},{"id":"https://openalex.org/keywords/philosophy","display_name":"Philosophy","score":0.06412920355796814},{"id":"https://openalex.org/keywords/computer-security","display_name":"Computer security","score":0.06074514985084534},{"id":"https://openalex.org/keywords/biology","display_name":"Biology","score":0.06036734580993652},{"id":"https://openalex.org/keywords/linguistics","display_name":"Linguistics","score":0.047121673822402954}],"concepts":[{"id":"https://openalex.org/C141603448","wikidata":"https://www.wikidata.org/wiki/Q134830","display_name":"Prefix","level":2,"score":0.7021961212158203},{"id":"https://openalex.org/C2776214188","wikidata":"https://www.wikidata.org/wiki/Q408386","display_name":"Inference","level":2,"score":0.619791567325592},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.561455488204956},{"id":"https://openalex.org/C144559511","wikidata":"https://www.wikidata.org/wiki/Q2986279","display_name":"Principal (computer security)","level":2,"score":0.5357154607772827},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.5170941352844238},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5095344185829163},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.367093026638031},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.33423900604248047},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.2832360863685608},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.06412920355796814},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.06074514985084534},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.06036734580993652},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.047121673822402954},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3729308","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3729308","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3729308","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3729308","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3729308","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3729308","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"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":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4411260224.pdf","grobid_xml":"https://content.openalex.org/works/W4411260224.grobid-xml"},"referenced_works_count":32,"referenced_works":["https://openalex.org/W1543895987","https://openalex.org/W1568497055","https://openalex.org/W1980939032","https://openalex.org/W1985088747","https://openalex.org/W2014021676","https://openalex.org/W2032220227","https://openalex.org/W2036676170","https://openalex.org/W2043188316","https://openalex.org/W2059895047","https://openalex.org/W2087123999","https://openalex.org/W2096973632","https://openalex.org/W2098374496","https://openalex.org/W2100738443","https://openalex.org/W2106952596","https://openalex.org/W2109131239","https://openalex.org/W2109375905","https://openalex.org/W2117552698","https://openalex.org/W2131653740","https://openalex.org/W2131916293","https://openalex.org/W2154717882","https://openalex.org/W2163976959","https://openalex.org/W2166822586","https://openalex.org/W2796492787","https://openalex.org/W3000154111","https://openalex.org/W3001202710","https://openalex.org/W3015074823","https://openalex.org/W3102142559","https://openalex.org/W3187876763","https://openalex.org/W4248324061","https://openalex.org/W4250583525","https://openalex.org/W4293812611","https://openalex.org/W4411260224"],"related_works":["https://openalex.org/W2142481367","https://openalex.org/W3196321793","https://openalex.org/W3080705045","https://openalex.org/W2385527937","https://openalex.org/W2005880840","https://openalex.org/W4297831890","https://openalex.org/W2804371217","https://openalex.org/W2963764498","https://openalex.org/W2068383718","https://openalex.org/W4246881098"],"abstract_inverted_index":{"At":[0],"the":[1,4,10,25,28,40,45,80,83,102,155,178,200,221,233,246,249,284],"heart":[2],"of":[3,27,44,82,158,167,177,180,248,291,311],"Damas-Hindley-Milner":[5],"(HM)":[6],"type":[7,17,26,37,56,85,103,112,116,160,182,202,205,223,241,252,272],"system":[8,47,183,273],"lies":[9],"abstraction":[11],"rule":[12,143],"which":[13,95],"derives":[14,227],"a":[15,19,53,133,140,208,294,308],"function":[16],"for":[18,114],"lambda":[20],"expression.":[21],"In":[22,195],"this":[23,76,196],"rule,":[24],"parameter":[29],"can":[30,34,265],"be":[31,35],"\"guessed\",":[32],"and":[33,171,216,264,286,296],"any":[36],"that":[38,49,57,230],"fits":[39],"derivation.":[41],"The":[42,239],"beauty":[43],"HM":[46,84,90,201,222,251],"is":[48,65,78,135,190,214],"there":[50],"always":[51,127,226],"exists":[52],"most":[54,70,129],"general":[55,71,130],"encompasses":[58],"all":[59,149],"possible":[60,150],"derivations":[61],"\u2013":[62],"Algorithm":[63],"W":[64,169],"used":[66],"to":[67,101,105,126,137,220,232,245,258,270,282],"infer":[68],"these":[69,153],"types":[72,229,234],"in":[73,191,275,279,289,314,318],"practice.":[74,276],"Unfortunately,":[75],"property":[77],"also":[79,255,306],"bane":[81],"rules.":[86],"Many":[87],"languages":[88],"extend":[89],"typing":[91],"with":[92,218],"additional":[93],"features":[94],"often":[96],"require":[97,124,301],"complex":[98,302],"side":[99,303],"conditions":[100],"rules":[104,203,242],"maintain":[106],"principal":[107,228],"types.":[108,131],"For":[109],"example,":[110],"various":[111,159,181],"systems":[113,288],"impredicative":[115],"inference,":[117],"like":[118,185],"HMF,":[119],"FreezeML,":[120],"or":[121,187],"Boxy":[122],"types,":[123],"let-bindings":[125],"assign":[128],"Such":[132],"restriction":[134],"difficult":[136],"specify":[138],"as":[139,145,204,316],"logical":[141],"deduction":[142],"though,":[144],"it":[146],"ranges":[147],"over":[148],"derivations.":[151],"Despite":[152],"complications,":[154],"actual":[156],"implementations":[157],"inference":[161,206,262,292],"algorithms":[162],"are":[163,243],"usually":[164],"straightforward":[165],"extensions":[166,274],"algorithm":[168,237],",":[170,210],"from":[172],"an":[173,261,267],"implementation":[174],"perspective,":[175],"much":[176],"complexity":[179],"extensions,":[184],"boxes":[186],"polymorphic":[188],"weights,":[189],"some":[192],"sense":[193],"artificial.":[194],"article":[197],"we":[198,298],"rephrase":[199],"under":[207,293],"prefix":[209],"called":[211],"HMQ.":[212],"HMQ":[213,240,315],"sound":[215],"complete":[217],"respect":[219],"rules,":[224,253],"but":[225,254],"correspond":[231],"inferred":[235],"by":[236],"W.":[238],"close":[244],"clarity":[247],"declarative":[250],"specific":[256],"enough":[257],"\"read":[259],"off\"":[260],"algorithm,":[263],"form":[266],"excellent":[268],"basis":[269],"describe":[271,283],"We":[277,305],"show":[278,307],"particular":[280],"how":[281,297],"FreezeML":[285],"HMF":[287],"terms":[290],"prefix,":[295],"no":[299],"longer":[300],"conditions.":[304],"novel":[309],"formalization":[310],"static":[312],"overloading":[313],"implemented":[317],"Koka":[319],"language.":[320]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1}],"updated_date":"2026-08-26T07:47:46.906454","created_date":"2025-10-10T00:00:00"}
