Novice Type Error Diagnosis with Natural Language Models
Not on the map. Why?
Abstract (arXiv)
Strong static type systems help programmers eliminate many errors without much burden of supplying type annotations. However, this flexibility makes it highly non-trivial to diagnose ill-typed programs, especially for novice programmers. Compared to classic constraint solving and optimization-based approaches, the data-driven approach has shown great promise in identifying the root causes of type errors with higher accuracy. Instead of relying on hand-engineered features, this work explores natural language models for type error localization, which can be trained in an end-to-end fashion without requiring any features. We demonstrate that, for novice type error diagnosis, the language model-based approach significantly outperforms the previous state-of-the-art data-driven approach. Specifically, our model could predict type errors correctly 62% of the time, outperforming the state-of-the-art Nate's data-driven model by 11%, in a more rigorous accuracy metric. Furthermore, we also apply structural probes to explain the performance difference between different language models.
Key facts. No citing papers in the map yet (data through 14 Oct 2026). Builds on 8 of its 23 references that are in the map. First posted on arXiv 7 Oct 2022.
Builds on
8 of 23 references.
References · 8
- 2017Attention Is All You Needcited by 60,361
- 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,399
- 2020Language Models are Few-Shot Learnerscited by 32,419
- 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,310
- 2019A Comprehensive Survey on Transfer Learningcited by 1,160
- 2017Exploring Generalization in Deep Learningcited by 600
- 2017Learning to Blame: Localizing Novice Type Errors with Data-Driven Diagnosiscited by 2
- 2016Dynamic Witnesses for Static Type Errors (or, Ill-Typed Programs Usually Go Wrong)cited by 1
Built on by
Not cited yet.