Affiliation:
1. Brown University, Providence, USA
Abstract
Misconceptions about core linguistic concepts like mutable
variables, mutable compound data, and their interaction with scope
and higher-order functions seem to be widespread.
But
how do we detect
them, given that experts have blind spots and may not realize the
myriad ways in which students can misunderstand programs?
Furthermore, once identified, what can we do to correct them?
In this paper, we present a curated list of misconceptions, and an
instrument to detect them. These are distilled from student work
over several years and match and extend prior research. We also
present an automated, self-guided tutoring system. The tutor builds
on strategies in the education literature and is explicitly designed
around identifying and correcting misconceptions.
We have tested the tutor in multiple settings.
Our data consistently show that (a) the misconceptions we tackle are
widespread, and (b) the tutor appears to improve understanding.
Publisher
Association for Computing Machinery (ACM)
Reference50 articles.
1. Learning Through Case Comparisons: A Meta-Analytic Review
2. Gary Bernhardt. 2012. Wat. https://www.destroyallsoftware.com/talks/wat
3. David Chase and Russ Cox. 2023. Fixing For Loops in Go 1.22 - The Go Programming Language. https://go.dev/blog/loopvar-preview
4. Ownership types for flexible alias protection
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献