paper-with-me

Papers

SYNFIX: Automatically Fixing Syntax Errors using Compiler Diagnostics

2021-04-29 · Toufique Ahmed, Noah Rose Ledesma, Premkumar Devanbu

Beginning programmers struggle with the complex grammar of modern programming languages like Java, and make lot of syntax errors. The diagnostic syntax error messages from compilers and IDEs are sometimes useful, but often the messages are cryptic and puzzling. Students could be helped, and instructors' time saved, by automated repair suggestions when dealing with syntax errors. Large samples of student errors and fixes are now available, offering the possibility of data-driven machine-learning approaches to help students fix syntax errors. Current machine-learning approaches do a reasonable job fixing syntax errors in shorter programs, but don't work as well even for moderately longer programs. We introduce SYNFIX, a machine-learning based tool that substantially improves on the state-of-the-art, by learning to use compiler diagnostics, employing a very large neural model that leverages unsupervised pre-training, and relying on multi-label classification rather than autoregressive synthesis to generate the (repaired) output. We describe SYNFIX's architecture in detail, and provide a detailed evaluation. We have built SYNFIX into a free, open-source version of Visual Studio Code; we make all our source code and models freely available.

📄 PDF Abstract BibTeX arXiv:2104.14671

Code (0)

등록된 구현이 없습니다.

Tasks

BIG-bench Machine LearningDiagnosticMulti-Label ClassificationMUlTI-LABEL-ClASSIFICATIONUnsupervised Pre-training

Methods 이 논문이 사용한 방법론

Repair 설명 없음

Similar Papers 제목 키워드 기반

Learning to Fix Build Errors with Graph2Diff Neural Networks

2019-11-04 · Daniel Tarlow, Subhodeep Moitra, Andrew Rice, Zimin Chen 외

Professional software developers spend a significant amount of time fixing builds, but this has received little attention as a problem in automatic program repair. We present a new deep learning architecture, called Grap…

DiagnosticGraph Neural NetworkProgram Repair

DeepFix: Fixing Common C Language Errors by Deep Learning

2017-02-04 · Rahul Gupta, Soham Pal, Aditya Kanade, Shirish Shevade

The problem of automatically fixing programming errors is a very active research topic in software engineering. This is a challenging problem as fixing even a single error may require analysis of the entire program. In p…

Deep LearningProgram Repair

Generating High-Precision Feedback for Programming Syntax Errors using Large Language Models

2023-01-24 · Tung Phung, José Cambronero, Sumit Gulwani, Tobias Kohn 외

Large language models (LLMs), such as Codex, hold great promise in enhancing programming education by automatically generating feedback for students. We investigate using LLMs to generate feedback for fixing syntax error…

Agentic Harness for Real-World Compilers

2026-03-20 · Yingwei Zheng, Cong Li, Shaohua Li, Yuqun Zhang 외 arxiv

Compilers are critical to modern computing, yet fixing compiler bugs is difficult. While recent large language model (LLM) advancements enable automated bug repair, compiler bugs pose unique challenges due to their compl…

Logic Error Localization in Student Programming Assignments Using Pseudocode and Graph Neural Networks

2024-10-11 · Zhenyu Xu, Kun Zhang, Victor S. Sheng

Pseudocode is extensively used in introductory programming courses to instruct computer science students in algorithm design, utilizing natural language to define algorithmic behaviors. This learning approach enables stu…

DiagnosticGraph Neural Network