
Alan & Kim Zimmerman
Thanks Ben, a great summary. Is there a Wiki page for this? It feels like it should be on one, so we can easily comment/update the individual points.
Here you are: https://ghc.haskell.org/trac/ghc/wiki/PrettyErrors In the interest of time I essentially just pasted my response. Feel free to hack it up to your heart's content.
In terms of the pretty-printer and its string type. Perhaps we could backpackify it to use http://next.hackage.haskell.org:8080/package/str-sig, and then specialise the GHC version to FastString etc.
Sounds plausible. Relatedly, I always found it a bit odd that we used FastString for Doc literals. Namely we have to pay the cost of hashing the string, despite the fact that we will never use the hash. It's likely a tiny effect (hashing is quite quick), but it still seems odd. Cheers,