{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/deep-reinforcement-learning-for-programming","title":"Deep Reinforcement Learning for Programming Language Correction","arxiv_id":"1801.10467","date":"2018-01-31","proceeding":null,"authors":["Rahul Gupta","Aditya Kanade","Shirish Shevade"],"abstract":"Novice programmers often struggle with the formal syntax of programming\nlanguages. To assist them, we design a novel programming language correction\nframework amenable to reinforcement learning. The framework allows an agent to\nmimic human actions for text navigation and editing. We demonstrate that the\nagent can be trained through self-exploration directly from the raw input, that\nis, program text itself, without any knowledge of the formal syntax of the\nprogramming language. We leverage expert demonstrations for one tenth of the\ntraining data to accelerate training. The proposed technique is evaluated on\n6975 erroneous C programs with typographic errors, written by students during\nan introductory programming course. Our technique fixes 14% more programs and\n29% more compiler error messages relative to those fixed by a state-of-the-art\ntool, DeepFix, which uses a fully supervised neural machine translation\napproach.","url_abs":"http://arxiv.org/abs/1801.10467v1","url_pdf":"http://arxiv.org/pdf/1801.10467v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"deep-reinforcement-learning-for-programming","repo_url":"https://github.com/terne/dtuproject","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}}],"tasks":[{"task_slug":"deep-reinforcement-learning","task_name":"Deep Reinforcement Learning"},{"task_slug":"machine-translation","task_name":"Machine Translation"},{"task_slug":"program-repair","task_name":"Program Repair"},{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"reinforcement-learning-1","task_name":"Reinforcement Learning (RL)"},{"task_slug":"translation","task_name":"Translation"},{"task_slug":"reinforcement-learning-2","task_name":"reinforcement-learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/program-repair-on-deepfix","task":"Program Repair","dataset":"DeepFix","model":"RLAssist","rank_in_archive_order":4,"of":4,"metrics":{"Average Success Rate":"26.6"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1801.10467","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}