Nothing specific for now. The issue tracked is for the errors themselves (the content). My plea is about having something like -fdiagnostics-for-adhd which will work for every ghc warning/message (the form), regardless of what’s in the messages themselves.
Do people with ADHD have specific needs for error messages? I would have expected that better error messages could help everyone, so we wouldn’t need an extra flag.
I’m not sure what to make of this post either. As someone diagnosed with this condition and vaguely familiar with it, I can’t stress enough that this is a spectrum too.
Looking for some good science on this, my first intuition was that we need stronger visual cues. A frequently held theory seems to be that our bottom-up attention (reacting to stimulus) is better than our top-down attention (goal-driven). However, research seems to indicate that both forms are impacted by the condition, so I’m not really sure how much of this is social media wisdom or clinical knowledge.
However, the few studies that did examine search slopes [105, 108, 113, 115] found that ADHD and non-ADHD slopes did not significantly differ, suggesting an intact attention to a visually salient target stimulus. Ultimately, while the limited evidence on search slopes indicates that the fundamental mechanisms of bottom-up attention may be operational in ADHD, their slower, more variable, and less accurate performance is indicative of underlying difficulties in attentional processing.
So I guess the idea would be: more/better colors, stronger contrast, bold, shorter text? Something that catches the eye quickly and gives the most important information instantly, without requiring to read the entire message. But this is just a guess. OP did not specify.
Personally, I hate to traverse the current sprawling mess of build logs and error messages just to recover what was the actual problem and what is there to do about it. At least a summary of what went wrong at the end of it all would be quite appreciated.
$ stack build
.... lines lines lines lines ...
-- snip --
.... lines lines lines lines ...
2 errors in 5 files:
GHC-12123: Foo is flabbegasted by zonk (Any)
- src/Domain/Specific/Foo.hs:123
- src/Domain/Spam.hs:7643
GHC-2692: I'm a compiler, not an unsafe missile launcher
- app/Main.hs:32
- src/Utils.hs:213
- src/Utils/Extras.hs:5423
In general, the sprawl should be opt-in. If someone wants to unroll that specific error (or all of them), ask for it (or build with -fi-love-sprawl as a global default).
Users’ attention should be a respected resource, not to be wasted on a whim, just in case.
I believe there should be a default that’s more terse than we have now. Forcing users to use IDEs just to avoid getting swamped by the compiler is borderline cruel (credit where credit is due, thanks the HLS contributors for all the great work so far). Forcing users to beg the compiler each time and punishing forgetting to add the -fdont-punish-me switch is cruel.
I know about ghcid and the extra tooling I might want over the json output. They still contain text blobs in there. I’m pushing for better defaults that don’t force extra tooling to solve the feedback/UX.