4 ms·
There has been some research done on how programmers interpret gradual typing systems, and it turns out that it breaks many expectations and ends up being confu
by gandalfgeek 7y ago
There has been some research done on how programmers interpret gradual typing systems, and it turns out that it breaks many expectations and ends up being confusing.
Explainer video: https://www.youtube.com/watch?v=iRf9l3Bz7nA https://www.youtube.com/watch?v=iRf9l3Bz7nA
Original paper: https://cs.brown.edu/~sk/Publications/Papers/Published/tgpk-beh-grad-types-user-study/paper.pdf https://cs.brown.edu/~sk/Publications/Papers/Published/tgpk-...
- jamil7 7y agoInteresting paper thanks for sharing.
- mcbits 7y agoNote that the paper is concerned with run-time type checking and glosses over the fact that most/all of those code samples in the survey would be rejected at compile time by a static type checker (or at least by TypeScript). Their conclusion that "erasure" is disliked and unexpected is effectively saying the underlying dynamic language's behavior is disliked and unexpected. Of course it's possible to deliberately or accidentally coerce TypeScript into violating its type constraints and behaving in JavaScript's disliked and unexpected ways, but the survey questions would have to be substantially different, and likely the responses as well.