The Journey of a Dotty Diagnostic
summary
Argues Dotty needs structured diagnostics not just strings and shows concrete work: add a diagnostic code and a data field to the sbt/zinc/BSP/LSP chain so compilers (dotc), build tools (sbt, Mill, Bloop), and Metals carry machine‑readable info to editors. Demonstrates a Scala CLI quick‑fix that updates a using directive and a prototype error‑code index; one new field requires many repo updates but the code shows up in editors now and related info/fixes are in progress.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:23What is a diagnostic
- 5:57Diagnostics travel path
- 10:29SBT Bridge and Zinc role
- 13:17Diagnostics in LSP/BSP
- 16:08Scala vs other languages
- 23:31Rust’s diagnostic structure
- 26:40Advanced diagnostics in Metals
- 29:30Scala’s diagnostic progress
- 34:44Future improvements
- 35:26Q&A
related talks
47mInteractive development with Dotty
40mIntegrating IDEs with Dotty the experimental Scala compiler
44mDotty Support in IntelliJ IDEA
29mDotty support in IntelliJ IDEA
46mSix steps from zero to IDE
40mWe deserve helpful tools
58mElegant Scala builds and bootstrapping Dotty with CBT
23mStructured diagnostics for the OCaml compiler
