Can computer programs correct human errors? This paper proposes a method for analyzing statements in programming languages that can tolerate specification inaccuracies. The method uses feature extraction, approximate tree matching, and feedback from the matching process—principles often found in artificial intelligence research. A pilot program incorporating these principles is described, and initial results are presented. The final section surveys additional principles under investigation.
Published in Communications of the ACM, a leading journal in computer science, this paper aligns with the journal’s focus on advancements in computing. By presenting a method for adaptive correction of program statements, the paper contributes to the ongoing evolution of programming language tools and techniques, making it highly relevant to the journal’s readership.