{"id":"https://openalex.org/W4384155659","doi":"https://doi.org/10.1145/3597926.3598048","title":"CODEP: Grammatical Seq2Seq Model for General-Purpose Code Generation","display_name":"CODEP: Grammatical Seq2Seq Model for General-Purpose Code Generation","publication_year":2023,"publication_date":"2023-07-12","ids":{"openalex":"https://openalex.org/W4384155659","doi":"https://doi.org/10.1145/3597926.3598048"},"language":"en","primary_location":{"id":"doi:10.1145/3597926.3598048","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3597926.3598048","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis","raw_type":"proceedings-article"},"type":"conference-paper","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/A5077542599","display_name":"Yihong Dong","orcid":"https://orcid.org/0000-0002-6048-2377"},"institutions":[{"id":"https://openalex.org/I20231570","display_name":"Peking University","ror":"https://ror.org/02v51f717","country_code":"CN","type":"education","lineage":["https://openalex.org/I20231570"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Yihong Dong","raw_affiliation_strings":["Peking University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Peking University, China","institution_ids":["https://openalex.org/I20231570"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5100447691","display_name":"Ge Li","orcid":"https://orcid.org/0000-0003-0140-0949"},"institutions":[{"id":"https://openalex.org/I20231570","display_name":"Peking University","ror":"https://ror.org/02v51f717","country_code":"CN","type":"education","lineage":["https://openalex.org/I20231570"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Ge Li","raw_affiliation_strings":["Peking University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Peking University, China","institution_ids":["https://openalex.org/I20231570"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5049100391","display_name":"Zhi Jin","orcid":"https://orcid.org/0000-0003-1087-226X"},"institutions":[{"id":"https://openalex.org/I20231570","display_name":"Peking University","ror":"https://ror.org/02v51f717","country_code":"CN","type":"education","lineage":["https://openalex.org/I20231570"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Zhi Jin","raw_affiliation_strings":["Peking University, China"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Peking University, China","institution_ids":["https://openalex.org/I20231570"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I20231570"],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":18,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"188","last_page":"198"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10181","display_name":"Natural Language Processing Techniques","score":0.9979000091552734,"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/T10181","display_name":"Natural Language Processing Techniques","score":0.9979000091552734,"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/T10028","display_name":"Topic Modeling","score":0.9959999918937683,"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.9948999881744385,"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.8663142919540405},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.788475513458252},{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.667402982711792},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6395197510719299},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.6127293109893799},{"id":"https://openalex.org/keywords/benchmark","display_name":"Benchmark (surveying)","score":0.5703105330467224},{"id":"https://openalex.org/keywords/grammar","display_name":"Grammar","score":0.5535986423492432},{"id":"https://openalex.org/keywords/natural-language-processing","display_name":"Natural language processing","score":0.5387573838233948},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.532615065574646},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.5019731521606445},{"id":"https://openalex.org/keywords/language-model","display_name":"Language model","score":0.46497464179992676},{"id":"https://openalex.org/keywords/construct","display_name":"Construct (python library)","score":0.4630482494831085},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.43618810176849365},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.42967846989631653}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8663142919540405},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.788475513458252},{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.667402982711792},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6395197510719299},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.6127293109893799},{"id":"https://openalex.org/C185798385","wikidata":"https://www.wikidata.org/wiki/Q1161707","display_name":"Benchmark (surveying)","level":2,"score":0.5703105330467224},{"id":"https://openalex.org/C26022165","wikidata":"https://www.wikidata.org/wiki/Q8091","display_name":"Grammar","level":2,"score":0.5535986423492432},{"id":"https://openalex.org/C204321447","wikidata":"https://www.wikidata.org/wiki/Q30642","display_name":"Natural language processing","level":1,"score":0.5387573838233948},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.532615065574646},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5019731521606445},{"id":"https://openalex.org/C137293760","wikidata":"https://www.wikidata.org/wiki/Q3621696","display_name":"Language model","level":2,"score":0.46497464179992676},{"id":"https://openalex.org/C2780801425","wikidata":"https://www.wikidata.org/wiki/Q5164392","display_name":"Construct (python library)","level":2,"score":0.4630482494831085},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.43618810176849365},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.42967846989631653},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C205649164","wikidata":"https://www.wikidata.org/wiki/Q1071","display_name":"Geography","level":0,"score":0.0},{"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/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C13280743","wikidata":"https://www.wikidata.org/wiki/Q131089","display_name":"Geodesy","level":1,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3597926.3598048","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3597926.3598048","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/4","display_name":"Quality Education","score":0.44999998807907104}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":18,"referenced_works":["https://openalex.org/W1560050268","https://openalex.org/W2064675550","https://openalex.org/W2962728167","https://openalex.org/W2963106169","https://openalex.org/W2963655793","https://openalex.org/W2963794306","https://openalex.org/W2963868406","https://openalex.org/W2970004377","https://openalex.org/W2997847174","https://openalex.org/W3005855585","https://openalex.org/W3170092793","https://openalex.org/W3172275282","https://openalex.org/W3176868790","https://openalex.org/W3198685994","https://openalex.org/W4205749957","https://openalex.org/W4250325350","https://openalex.org/W4288088047","https://openalex.org/W4308648312"],"related_works":["https://openalex.org/W650988184","https://openalex.org/W2162410319","https://openalex.org/W2137356287","https://openalex.org/W2789551765","https://openalex.org/W4321184925","https://openalex.org/W1483618713","https://openalex.org/W60915090","https://openalex.org/W2025840053","https://openalex.org/W2161692994","https://openalex.org/W3122369893"],"abstract_inverted_index":{"General-purpose":[0],"code":[1,12,27,36,76,91,127],"generation":[2,110,128],"aims":[3],"to":[4,11,32,64,69,107,114,135,163,230],"automatically":[5],"convert":[6],"the":[7,24,34,66,79,109,137,147,241],"natural":[8],"language":[9,18,89],"description":[10],"snippets":[13],"in":[14,166],"a":[15,59,84,100,126,132,176],"general-purpose":[16,75],"programming":[17],"(GPL)":[19],"such":[20],"as":[21,195],"Python.":[22],"In":[23,54],"process":[25],"of":[26,40,86,111,139,149],"generation,":[28,77],"it":[29,202],"is":[30,83,95],"essential":[31],"guarantee":[33],"generated":[35],"satisfies":[37],"grammar":[38,48],"constraints":[39],"GPL.":[41],"However,":[42],"existing":[43,192],"sequence-to-sequence":[44],"(Seq2Seq)":[45],"approaches":[46],"neglect":[47],"rules":[49],"when":[50],"generating":[51],"GPL":[52],"code.":[53],"this":[55,120],"paper,":[56],"we":[57,98,122,174,199],"devise":[58],"pushdown":[60],"automaton":[61],"(PDA)-based":[62],"methodology":[63],"make":[65],"first":[67],"attempt":[68],"consider":[70],"grammatical":[71,116,205],"Seq2Seq":[72,112],"models":[73,113,165,194],"for":[74,178],"exploiting":[78],"principle":[80],"that":[81,201],"PL":[82],"subset":[85],"PDA":[87,94,101,133,140,150,168,177,234],"recognizable":[88],"and":[90,103,158,180,198,224],"accepted":[92],"by":[93,119],"grammatical.":[96],"Specifically,":[97],"construct":[99,175],"module":[102,235],"design":[104],"an":[105],"algorithm":[106],"constrain":[108],"ensure":[115],"correctness.":[117],"Guided":[118],"methodology,":[121],"further":[123],"propose":[124],"CODEP,":[125,173],"framework":[129,145],"equipped":[130],"with":[131,161],"module,":[134],"integrate":[136],"deduction":[138,151],"into":[141],"deep":[142],"learning.":[143],"This":[144],"leverages":[146],"state":[148,153,155],"(including":[152],"representation,":[154],"prediction":[156,160],"task,":[157],"joint":[159],"state)":[162],"assist":[164],"learning":[167],"deduction.":[169],"To":[170],"comprehensively":[171],"evaluate":[172],"Python":[179],"conduct":[181],"extensive":[182],"experiments":[183],"on":[184,208,218,222,227,240],"four":[185],"public":[186],"benchmark":[187,210],"datasets.":[188,211],"CODEP":[189,213],"can":[190],"employ":[191],"sequence-based":[193],"base":[196,231],"models,":[197],"show":[200],"achieves":[203,237],"100%":[204],"correctness":[206],"percentage":[207],"these":[209],"Consequently,":[212],"relatively":[214],"improves":[215],"17%":[216],"CodeBLEU":[217,226],"CONALA,":[219],"8%":[220],"EM":[221],"DJANGO,":[223],"15%":[225],"JUICE-10K":[228],"compared":[229],"models.":[232,243],"Moreover,":[233],"also":[236],"significant":[238],"improvements":[239],"pre-trained":[242]},"counts_by_year":[{"year":2025,"cited_by_count":8},{"year":2024,"cited_by_count":7},{"year":2023,"cited_by_count":3}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
