A Comparison of Three Program Query Languages to Detect Python Programming Misconceptions.

(2025) Companion Proceedings of the 9th International Conference on the Art, Science, and Engineering of Programming (Programming 2025) — Location: Prague, Czechia (2.June.2025)

Files

published_version.pdf
  • Open Access
  • Adobe PDF
  • 707.91 KB
  • https://creativecommons.org/licenses/by/4.0/

Details

Authors
Abstract
Detecting and addressing common misconceptions in beginner programmers' code is key to improve their learning experience. This paper evaluates the effectiveness of three static program query languages and tools: Flake8, Regex and CodeQL, for identifying such misconceptions in Python code. We implemented a set of 20 common misconceptions using each language and compared them on a variety of criteria, including accuracy, performance, expressiveness, learning curve and query readability. Our analysis highlights strengths and limitations of each approach, providing insights into the most effective method for detecting programming misconceptions and enhancing feedback quality for learners.
Affiliations

Citations

Colla, Q., Mens, K., & Liénard, J. (2025). A Comparison of Three Program Query Languages to Detect Python Programming Misconceptions. Open Access Series in Informatics, 134(21), 1-21:15. https://doi.org/10.4230/OASIcs.Programming.2025.21 (Original work published 2025)