Report on a User Test and Extension of a Type Debugger for Novice Programmers
Yuki Ishii (Ochanomizu University, Tokyo, Japan), Kenichi Asai, (Ochanomizu University, Tokyo, Japan)

TL;DR
This paper analyzes novice programmers' interactions with a type debugger, identifies its limitations, and proposes extensions like expression-specific messages and language levels to improve usability.
Contribution
It introduces enhancements to a type debugger, including expression-specific error messages and language levels, to better support novice programmers.
Findings
User tests revealed difficulties in understanding type errors.
Extensions improved clarity of error messages for novices.
Identified types of errors hard to explain to beginners.
Abstract
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.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
