{"id":"https://openalex.org/W4396214523","doi":"https://doi.org/10.1145/3649850","title":"PyDex: Repairing Bugs in Introductory Python Assignments using LLMs","display_name":"PyDex: Repairing Bugs in Introductory Python Assignments using LLMs","publication_year":2024,"publication_date":"2024-04-29","ids":{"openalex":"https://openalex.org/W4396214523","doi":"https://doi.org/10.1145/3649850"},"language":"en","primary_location":{"id":"doi:10.1145/3649850","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3649850","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3649850","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/3649850","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5014754883","display_name":"Jialu Zhang","orcid":"https://orcid.org/0009-0003-8193-0719"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Jialu Zhang","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"raw_orcid":"https://orcid.org/0009-0003-8193-0719","affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5046282128","display_name":"Jos\u00e9 Cambronero","orcid":"https://orcid.org/0000-0002-0713-6141"},"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":"Jos\u00e9 Pablo Cambronero","raw_affiliation_strings":["Microsoft, Washington DC, USA"],"raw_orcid":"https://orcid.org/0000-0002-0713-6141","affiliations":[{"raw_affiliation_string":"Microsoft, Washington DC, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5011543162","display_name":"Sumit Gulwani","orcid":"https://orcid.org/0000-0002-9226-9634"},"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":"Sumit Gulwani","raw_affiliation_strings":["Microsoft, Redmond, USA"],"raw_orcid":"https://orcid.org/0000-0002-9226-9634","affiliations":[{"raw_affiliation_string":"Microsoft, Redmond, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5051355395","display_name":"Vu Le","orcid":"https://orcid.org/0000-0003-3727-3291"},"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":"Vu Le","raw_affiliation_strings":["Microsoft, Redmond, USA"],"raw_orcid":"https://orcid.org/0000-0003-3727-3291","affiliations":[{"raw_affiliation_string":"Microsoft, Redmond, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5045794652","display_name":"Ru\u017eica Piska\u010d","orcid":"https://orcid.org/0000-0002-3267-0776"},"institutions":[{"id":"https://openalex.org/I32971472","display_name":"Yale University","ror":"https://ror.org/03v76x132","country_code":"US","type":"education","lineage":["https://openalex.org/I32971472"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Ruzica Piskac","raw_affiliation_strings":["Yale University, New Haven, USA"],"raw_orcid":"https://orcid.org/0000-0002-3267-0776","affiliations":[{"raw_affiliation_string":"Yale University, New Haven, USA","institution_ids":["https://openalex.org/I32971472"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5025062647","display_name":"Gustavo Soares","orcid":"https://orcid.org/0000-0002-8061-9000"},"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":"Gustavo Soares","raw_affiliation_strings":["Microsoft, Redmond, USA"],"raw_orcid":"https://orcid.org/0000-0002-8061-9000","affiliations":[{"raw_affiliation_string":"Microsoft, Redmond, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5055735931","display_name":"Gust Verbruggen","orcid":"https://orcid.org/0000-0001-9182-597X"},"institutions":[{"id":"https://openalex.org/I4210151458","display_name":"Microsoft (Belgium)","ror":"https://ror.org/05168yk81","country_code":"BE","type":"company","lineage":["https://openalex.org/I1290206253","https://openalex.org/I4210151458"]}],"countries":["BE"],"is_corresponding":false,"raw_author_name":"Gust Verbruggen","raw_affiliation_strings":["Microsoft, Keerbergen, Belgium"],"raw_orcid":"https://orcid.org/0000-0001-9182-597X","affiliations":[{"raw_affiliation_string":"Microsoft, Keerbergen, Belgium","institution_ids":["https://openalex.org/I4210151458"]}]}],"institutions":[],"countries_distinct_count":3,"institutions_distinct_count":7,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":13.3658,"has_fulltext":false,"cited_by_count":31,"citation_normalized_percentile":{"value":0.99007649,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":98,"max":100},"biblio":{"volume":"8","issue":"OOPSLA1","first_page":"1100","last_page":"1124"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9993000030517578,"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"}},"topics":[{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9993000030517578,"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9945999979972839,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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.9937000274658203,"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/python","display_name":"Python (programming language)","score":0.9058400392532349},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5658177733421326},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.5107402801513672},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.34495335817337036}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.9058400392532349},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5658177733421326},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.5107402801513672},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.34495335817337036}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3649850","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3649850","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3649850","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/3649850","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3649850","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3649850","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":[{"id":"https://metadata.un.org/sdg/4","score":0.8299999833106995,"display_name":"Quality Education"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4396214523.pdf"},"referenced_works_count":56,"referenced_works":["https://openalex.org/W1475493299","https://openalex.org/W1980073965","https://openalex.org/W2012312630","https://openalex.org/W2060333670","https://openalex.org/W2063387237","https://openalex.org/W2145373440","https://openalex.org/W2274071363","https://openalex.org/W2295100577","https://openalex.org/W2344973853","https://openalex.org/W2373227884","https://openalex.org/W2465021265","https://openalex.org/W2474318526","https://openalex.org/W2560674852","https://openalex.org/W2740130372","https://openalex.org/W2740349831","https://openalex.org/W2747329762","https://openalex.org/W2767951593","https://openalex.org/W2794832431","https://openalex.org/W2798812031","https://openalex.org/W2799855324","https://openalex.org/W2886081451","https://openalex.org/W2954131085","https://openalex.org/W2962809971","https://openalex.org/W2998011150","https://openalex.org/W2998870469","https://openalex.org/W2999905431","https://openalex.org/W3046264262","https://openalex.org/W3176859472","https://openalex.org/W3185341429","https://openalex.org/W3193800237","https://openalex.org/W3194184668","https://openalex.org/W3205927779","https://openalex.org/W3205944947","https://openalex.org/W3206370442","https://openalex.org/W3207613969","https://openalex.org/W4211263275","https://openalex.org/W4213423286","https://openalex.org/W4220847985","https://openalex.org/W4255632703","https://openalex.org/W4284690374","https://openalex.org/W4285490371","https://openalex.org/W4286530316","https://openalex.org/W4308643319","https://openalex.org/W4311887664","https://openalex.org/W4313563862","https://openalex.org/W4321354243","https://openalex.org/W4381611512","https://openalex.org/W4382239980","https://openalex.org/W4384345745","https://openalex.org/W4387723939","https://openalex.org/W4388644561","https://openalex.org/W4389209075","https://openalex.org/W6600120041","https://openalex.org/W6600286444","https://openalex.org/W6632526476","https://openalex.org/W6931408281"],"related_works":["https://openalex.org/W4391375266","https://openalex.org/W2748952813","https://openalex.org/W2341492732","https://openalex.org/W3187193180","https://openalex.org/W106542691","https://openalex.org/W1699080303","https://openalex.org/W4297799326","https://openalex.org/W3116064965","https://openalex.org/W2207495067","https://openalex.org/W1906486629"],"abstract_inverted_index":{"Students":[0],"often":[1],"make":[2],"mistakes":[3,21,118],"in":[4,59],"their":[5,12],"introductory":[6,106],"programming":[7,108],"assignments":[8],"as":[9,91],"part":[10],"of":[11,27,52,65,75,95,127],"learning":[13],"process.":[14],"Unfortunately,":[15],"providing":[16],"custom":[17],"repairs":[18],"for":[19,57,105,163],"these":[20],"can":[22,39,112,171],"require":[23,67],"a":[24,83,149,157],"substantial":[25,69],"amount":[26],"time":[28],"and":[29,54,77,116,129,140,156,175],"effort":[30],"from":[31],"class":[32],"instructors.":[33],"Automated":[34],"program":[35,130],"repair":[36,153,161],"(APR)":[37],"techniques":[38,56],"be":[40],"used":[41],"to":[42,81,97,142],"synthesize":[43],"such":[44,90],"fixes.":[45],"Prior":[46],"work":[47],"has":[48],"explored":[49],"the":[50,60],"use":[51,82],"symbolic":[53],"neural":[55],"APR":[58,100],"education":[61],"domain.":[62],"Both":[63],"types":[64],"approaches":[66],"either":[68],"engineering":[70],"efforts":[71],"or":[72],"large":[73,84],"amounts":[74],"data":[76],"training.":[78],"We":[79,132,167],"propose":[80],"language":[85],"model":[86],"trained":[87],"on":[88,135,179],"code,":[89],"Codex":[92],"(a":[93],"version":[94],"GPT),":[96],"build":[98],"an":[99],"system":[101,111],"--":[102,104],"PyDex":[103,134,170],"Python":[107,151,159],"assignments.":[109],"Our":[110],"fix":[113,172],"both":[114],"syntactic":[115],"semantic":[117,160],"by":[119],"combining":[120],"multi-modal":[121],"prompts,":[122],"iterative":[123],"querying,":[124],"test-case-based":[125],"selection":[126],"few-shots,":[128],"chunking.":[131],"evaluate":[133],"286":[136],"real":[137],"student":[138,164],"programs":[139,174],"compare":[141],"three":[143],"baselines,":[144],"including":[145],"one":[146],"that":[147,169],"combines":[148],"state-of-the-art":[150,158],"syntax":[152],"engine,":[154],"BIFI,":[155],"engine":[162],"assignments,":[165],"Refactory.":[166],"find":[168],"more":[173],"produce":[176],"smaller":[177],"patches":[178],"average.":[180]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":23},{"year":2024,"cited_by_count":6}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
