Novice Type Error Diagnosis with Natural Language Models - Artifacts
- 1. McGill Univeristy
- 2. McGill University
Description
Strong type system helps programmers to eliminate many er-
rors without much burden of supplying type annotations. However, this
flexibility makes it highly non-trivial to diagnose the failure mode, es-
pecially for novice programmers. Compared to classic constraint solving
and optimization-based approaches, the data-driven approach has shown
great promise in identifying the root cause of type errors with high accu-
racy. 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, language model based approach
significantly outperforms the previous state-of-the-art data-driven ap-
proach. Specifically, our transformer 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 metric of accuracy mea-
surement. Furthermore, we also apply structural probe to explain the
performance difference of different language models.
Artifacts
- Kaggle Notebooks
- inference-7fa4ae-final.ipynb
- inference-for-model-training.ipynb
- nater.ova (Virtual Machine)
- Scripts for computing NATE models's accuracies under the new metric
- Scripts for Generating Graphs
- Accuracy of Type Error Localization Techniques.py
- Impact of type error threshold on blame accuracy.py
- Impacts on training loss.py
The size of this partifact package is about 5.2 Gb
Files
inference-7fa4ae-final.ipynb
Files
(5.1 GB)
Name | Size | Download all |
---|---|---|
md5:ed40e79d4a7df2482320ebf0b05c356c
|
3.4 kB | Download |
md5:4a1fffd65657de97b0aa2ac39ebc6a7d
|
5.5 kB | Download |
md5:3e31148dad705a59aabea4de27d919bc
|
13.8 kB | Download |
md5:e5c13a75d6cee4f164bebce7c930b097
|
66.2 kB | Preview Download |
md5:becd939ae6a6cf87670c0f504c29557e
|
76.6 kB | Preview Download |
md5:a945b29abe5b648a84cbdd02896df5b0
|
5.1 GB | Download |
md5:084f169a7698bb6797370edf1eca3e41
|
14.3 kB | Preview Download |