Abstract
Analyzing and evaluating student-generated code poses a big headache for programming education. Code evaluation is a delicate task requiring accuracy, efficiency, and error-checking. This paper considers one of the many useful tools in code evaluation. It's Abstract Syntax Trees (AST). AST is a robust tool for reading, filtering, and weighing student code. It is built from tree regular expressions for common programming patterns. This paper considers, firstly, integrating AST into code evaluation projects. Secondly and most importantly to the present implementation work is that Python programming language provides excellent compatibility for implementing such a program. Taking advantage of Python's feature that allows the inputting of code as a string, AST records and tracks everything about the user's own source. With AST being integrated into platforms for education, how to evaluate student code has been completely altered; as sites such as LeetCode and HackerRank testify. This paper presents an accurate, efficient and error-aware approach to code evaluation by improving on educational websites incorporating AST. Adapting well to the dynamics of programming education, this elaborate assessment system will provide students with truthful assessments and profound feedback on their coding capabilities. This article shows how AST-based evaluation has revolutionized the way programming is taught, and thoroughly explores its role in evaluating code.
Publisher
Ho Chi Minh City University of Technology and Education