Title: Smart Assessment of and Tutoring for Computational Thinking MOOC Assignments using MindReader,
Abstract: One of the major hurdles toward automatic semantic understanding of computer
programs is the lack of knowledge about what constitutes functional equivalence
of code segments. We postulate that a sound knowledgebase can be used to
deductively understand code segments in a hierarchical fashion by first
de-constructing a code and then reconstructing it from elementary knowledge and
equivalence rules of elementary code segments. The approach can also be
engineered to produce computable programs from conceptual and abstract
algorithms as an inverse function. In this paper, we introduce the core idea
behind the MindReader online assessment system that is able to understand a
wide variety of elementary algorithms students learn in their entry level
programming classes such as Java, C++ and Python. The MindReader system is able
to assess student assignments and guide them how to develop correct and better
code in real time without human assistance.