Report on a user test and extension of a type debugger for novice programmers

Y Ishii, K Asai - arXiv preprint arXiv:1412.4877, 2014 - arxiv.org
Y Ishii, K Asai
arXiv preprint arXiv:1412.4877, 2014arxiv.org
A type debugger interactively detects the expressions that cause type errors. It asks users
whether they intend the types of identifiers to be those that the compiler inferred. However, it
seems that novice programmers often get in trouble when they think about how to fix type
errors by reading the messages given by the type debugger. In this paper, we analyze the
user tests of a type debugger and report problems of the current type debugger. We then
extend the type debugger to address these problems. Specifically, we introduce expression …
A type debugger interactively detects the expressions that cause type errors. It asks users whether they intend the types of identifiers to be those that the compiler inferred. However, it seems that novice programmers often get in trouble when they think about how to fix type errors by reading the messages given by the type debugger. In this paper, we analyze the user tests of a type debugger and report problems of the current type debugger. We then extend the type debugger to address these problems. Specifically, we introduce expression-specific error messages and language levels. Finally, we show type errors that we think are difficult to explain to novice programmers. The subjects of the user tests were 40 novice students belonging to the department of information science at Ochanomizu University.
arxiv.org