{"id":"https://openalex.org/W4390605205","doi":"https://doi.org/10.1145/3632919","title":"Generating Well-Typed Terms That Are Not \u201cUseless\u201d","display_name":"Generating Well-Typed Terms That Are Not \u201cUseless\u201d","publication_year":2024,"publication_date":"2024-01-02","ids":{"openalex":"https://openalex.org/W4390605205","doi":"https://doi.org/10.1145/3632919"},"language":"en","primary_location":{"id":"doi:10.1145/3632919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632919","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/3632919","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5056975077","display_name":"J. Ray Frank","orcid":"https://orcid.org/0009-0007-7024-7331"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Justine Frank","raw_affiliation_strings":["University of Maryland, College Park, USA"],"raw_orcid":"https://orcid.org/0009-0007-7024-7331","affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, USA","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5016534383","display_name":"Benjamin Quiring","orcid":"https://orcid.org/0000-0002-6922-9706"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Benjamin Quiring","raw_affiliation_strings":["University of Maryland, College Park, USA"],"raw_orcid":"https://orcid.org/0000-0002-6922-9706","affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, USA","institution_ids":["https://openalex.org/I66946132"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5075217645","display_name":"Leonidas Lampropoulos","orcid":"https://orcid.org/0000-0003-0269-9815"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Leonidas Lampropoulos","raw_affiliation_strings":["University of Maryland, College Park, USA"],"raw_orcid":"https://orcid.org/0000-0003-0269-9815","affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, USA","institution_ids":["https://openalex.org/I66946132"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I66946132"],"apc_list":null,"apc_paid":null,"fwci":1.7915,"has_fulltext":true,"cited_by_count":6,"citation_normalized_percentile":{"value":0.86206604,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":"8","issue":"POPL","first_page":"2318","last_page":"2339"},"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.9998000264167786,"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.9998000264167786,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9987999796867371,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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.9962999820709229,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6937378644943237},{"id":"https://openalex.org/keywords/argument","display_name":"Argument (complex analysis)","score":0.6739934682846069},{"id":"https://openalex.org/keywords/extension","display_name":"Extension (predicate logic)","score":0.6045252084732056},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.591331958770752},{"id":"https://openalex.org/keywords/expression","display_name":"Expression (computer science)","score":0.5602319836616516},{"id":"https://openalex.org/keywords/typed-lambda-calculus","display_name":"Typed lambda calculus","score":0.5451149940490723},{"id":"https://openalex.org/keywords/dependent-type","display_name":"Dependent type","score":0.5436344742774963},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.5364810228347778},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.4847649931907654},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4730317294597626},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.4552549123764038},{"id":"https://openalex.org/keywords/lambda-calculus","display_name":"Lambda calculus","score":0.4382960796356201},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.38407009840011597},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.08364042639732361}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6937378644943237},{"id":"https://openalex.org/C98184364","wikidata":"https://www.wikidata.org/wiki/Q1780131","display_name":"Argument (complex analysis)","level":2,"score":0.6739934682846069},{"id":"https://openalex.org/C2778029271","wikidata":"https://www.wikidata.org/wiki/Q5421931","display_name":"Extension (predicate logic)","level":2,"score":0.6045252084732056},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.591331958770752},{"id":"https://openalex.org/C90559484","wikidata":"https://www.wikidata.org/wiki/Q778379","display_name":"Expression (computer science)","level":2,"score":0.5602319836616516},{"id":"https://openalex.org/C142156749","wikidata":"https://www.wikidata.org/wiki/Q2607208","display_name":"Typed lambda calculus","level":3,"score":0.5451149940490723},{"id":"https://openalex.org/C20528804","wikidata":"https://www.wikidata.org/wiki/Q997433","display_name":"Dependent type","level":3,"score":0.5436344742774963},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.5364810228347778},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.4847649931907654},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4730317294597626},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.4552549123764038},{"id":"https://openalex.org/C135790938","wikidata":"https://www.wikidata.org/wiki/Q242028","display_name":"Lambda calculus","level":2,"score":0.4382960796356201},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.38407009840011597},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.08364042639732361},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","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/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3632919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632919","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/3632919","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3632919","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3632919","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":[{"id":"https://openalex.org/G6671297155","display_name":null,"funder_award_id":"CAREER","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G6975976583","display_name":null,"funder_award_id":"2107206, 2145649","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G8775549910","display_name":"Collaborative Research: SHF: Medium: Efficient and Trustworthy Proof Engineering","funder_award_id":"2107206","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4390605205.pdf","grobid_xml":"https://content.openalex.org/works/W4390605205.grobid-xml"},"referenced_works_count":36,"referenced_works":["https://openalex.org/W1456438575","https://openalex.org/W1799755352","https://openalex.org/W1972978214","https://openalex.org/W1982202832","https://openalex.org/W1999336811","https://openalex.org/W2013596093","https://openalex.org/W2025846768","https://openalex.org/W2029976661","https://openalex.org/W2031872041","https://openalex.org/W2032434999","https://openalex.org/W2033348393","https://openalex.org/W2059416532","https://openalex.org/W2077836627","https://openalex.org/W2093535699","https://openalex.org/W2105450475","https://openalex.org/W2125126351","https://openalex.org/W2268442582","https://openalex.org/W2278624804","https://openalex.org/W2476059279","https://openalex.org/W2562076538","https://openalex.org/W2752672741","https://openalex.org/W2753617992","https://openalex.org/W2756283368","https://openalex.org/W2931305575","https://openalex.org/W2943290483","https://openalex.org/W2949895386","https://openalex.org/W4234222550","https://openalex.org/W4238083723","https://openalex.org/W4293812394","https://openalex.org/W4293813125","https://openalex.org/W4302790834","https://openalex.org/W4312861873","https://openalex.org/W6677800364","https://openalex.org/W6696943777","https://openalex.org/W6811038720","https://openalex.org/W6912686383"],"related_works":["https://openalex.org/W3123171335","https://openalex.org/W2146437601","https://openalex.org/W1594451895","https://openalex.org/W4297858128","https://openalex.org/W2153353244","https://openalex.org/W21537352","https://openalex.org/W1993182924","https://openalex.org/W2140892577","https://openalex.org/W1458664253","https://openalex.org/W3091937109"],"abstract_inverted_index":{"Random":[0],"generation":[1,29,54,87,157,165],"of":[2,9,13,42,102,143,158,185,205],"well-typed":[3],"terms":[4,184],"lies":[5],"at":[6,122],"the":[7,40,50,85,132,135,144,156,196,202,216],"core":[8],"effective":[10,121],"random":[11],"testing":[12],"compilers":[14],"for":[15,160],"functional":[16],"languages.":[17],"Existing":[18],"techniques":[19],"have":[20],"had":[21],"success":[22],"following":[23],"a":[24,67,70,100,114,192],"top-down":[25],"type-oriented":[26],"approach":[27,209],"to":[28,65,94,168,180],"that":[30,61,117,125,176,198],"makes":[31],"choices":[32],"locally,":[33],"which":[34],"suffers":[35],"from":[36,49,195],"an":[37,43,141],"inherent":[38],"limitation:":[39],"type":[41,149],"expression":[44,51],"is":[45,89,118],"often":[46],"generated":[47],"independently":[48],"itself.":[52],"Such":[53,77],"frequently":[55],"yields":[56],"functions":[57,79,124],"with":[58,148,207],"argument":[59,86,186],"types":[60,159],"cannot":[62],"be":[63,95],"used":[64],"produce":[66],"result":[68],"in":[69,140,183,201],"meaningful":[71],"way,":[72],"leaving":[73],"those":[74],"arguments":[75,151],"unused.":[76],"\u201cuse-less\u201d":[78],"can":[80],"hinder":[81],"both":[82,131],"performance,":[83],"as":[84,99,138],"code":[88],"dead":[90],"but":[91],"still":[92],"needs":[93],"compiled,":[96],"and":[97,134,150,189],"effectiveness,":[98],"lot":[101],"interesting":[103],"optimizations":[104],"are":[105],"tested":[106],"less":[107],"frequently.":[108],"In":[109],"this":[110],"paper,":[111],"we":[112,190],"introduce":[113],"novel":[115],"algorithm":[116,174],"significantly":[119],"more":[120],"generating":[123],"use":[126],"their":[127],"arguments.":[128],"We":[129,171],"formalize":[130],"\u201clocal\u201d":[133],"\u201cnonlocal\u201d":[136],"algorithms":[137],"step-relations":[139],"extension":[142],"simply-typed":[145],"lambda":[146],"calculus":[147],"holes,":[152],"showing":[153],"how":[154],"delaying":[155],"subexpressions":[161],"by":[162],"allowing":[163],"nonlocal":[164],"steps":[166],"leads":[167],"\u201cuseful\u201d":[169],"functions.":[170],"implement":[172],"our":[173,208],"demonstrating":[175],"it\u2019s":[177],"much":[178],"closer":[179],"real":[181],"programs":[182],"usage":[187],"rate,":[188],"replicate":[191],"case":[193],"study":[194],"literature":[197],"finds":[199],"bugs":[200,211],"strictness":[203],"analyzer":[204],"GHC,":[206],"finding":[210],"four":[212],"times":[213],"faster":[214],"than":[215],"current":[217],"state-of-the-art":[218],"local":[219],"approach.":[220]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":1}],"updated_date":"2026-06-26T08:34:08.712188","created_date":"2025-10-10T00:00:00"}
