An Automatic Analysis Tool Based on Computational Thinking for BlockPy Programs

Can Xu, Zhiyong Feng, Peng Qi, Yan Sun · 2020

BlockPy is a block-based program language which has both block-based interface and traditional text-based interface. It fills the gap between block-based programming and language coding. But there is little work that focuses on the Computational Thinking(CT) evaluation of BlockPy programs. In this paper, we design and implement a BlockPy Analysis Tool to assess the CT skills of BlockPy programs automatically. We use Python's built-in AST module to analyse each node in the abstract syntax tree(AST) of each BlockPy program. Then, considering the characteristics of Python language, we propose a new CT Evaluation Criteria based on Scratch Analysis Tool(SAT). Under the guidance of the CT Evaluation Criteria, we propose a detailed scoring program to analyze each node of the program and get the CT score. Experimental results show the superiority of our tool compared with other analysis tools.

Read the paper · More papers on PaperTik