haskell / vscode-haskell

VS Code extension for Haskell, powered by haskell-language-server
https://marketplace.visualstudio.com/items?itemName=haskell.haskell
Other
555 stars 90 forks source link

Make vscode/hls compatible with SPJ #623

Open hasufell opened 2 years ago

hasufell commented 2 years ago

@simonpj had a few issues when setting up VSCode with HLS:

  1. Setting up VScode with WSL2 requires a lot of work: https://code.visualstudio.com/docs/remote/wsl-tutorial we should document that better or maybe automate it
  2. a lot of HLS plugins that impact performance are enabled by default and as such slow down working on big codebases like GHC. Adjusting this should be documented well. The GHC repository could also include a project-specific vscode config file that does this for all developers.
  3. confusing popups, e.g. https://github.com/haskell/vscode-haskell/pull/621

@fendor @runeksvendsen

codygman commented 2 years ago

a lot of HLS plugins that impact performance are enabled by default and as such slow down working on big codebases like GHC.

In my opinion this should be treated like game developers treat 60 fps in that anything that takes too long or whose space usage doesn't scale better than quadraticly should be disabled.

Maybe core plugins could be:

Notably this excludes wingman because on my large work codebase it always times out and disabling it in past versions sped things up.

Typed holes (this makes me sad) should be tamped down or disabled until they are sped up. I've has hls crash after timing out a long time on a typed hole in a big module.

Maybe even performance profiles for sets of plugins could be nice:

Because knowing which plugins to disable or finding out is a good amount of work .

This would also allow people to improve performance for their desired performance profile (or the one their huge codebase has them stuck with).